【发布时间】:2012-09-06 18:29:07
【问题描述】:
我有一个数据网格,其中数据源 #1 绑定到,例如
public class Class
{
public string Val { get; set; }
public string Val2 { get; set; }
}
List<Class> classes = new List<Class>();
dgr.DataSource = classes;
在这个数据网格中,我为每一行都有一个列表框,其中数据源 #2 绑定到:
<Columns>
<asp:TemplateColumn HeaderText="Spaltenname">
<ItemTemplate>
<asp:ListBox runat="server" DataTextField="Text" DataValueField="Value" DataSource="<%#oParentTablesHandler.DataTableXYZ%>" />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
这可行,但我在设置 SelectedValue 时遇到问题。
SelectedValue="<%# "" %>
会起作用,但我需要根据数据源 #1 中的 Val 进行选择。我怎样才能做到这一点?我想我需要使用 Eval,但是
SelectedValue="<%# Eval("Val") %> did not work...
编辑:我发现我想按文本而不是按值选择一个项目,啊。有没有办法做到这一点?
【问题讨论】:
-
更糟的是,您总是可以退回到在 RowDataBound 上设置值。另外,DataGrid 是指 1.1 的数据网格,还是 2.0 的 GridView 控件?
-
这是 1.1 的数据网格,但这不应该改变任何东西。
标签: asp.net data-binding datagrid .net-3.5