粗糙的类架构:
public class Entity
{
public Guid ID;
public Dictionary<String, object> Attributes;
}
属性具有以下键:listname (string), membercount(integer), type (boolean)
。
我有一个Telerik RadComboBox,它通过代码隐藏数据绑定到List并且有一个ItemTemplate:
<telerik:RadComboBox runat="server" ID="CboLists" DataValueField="Id">
<ItemTemplate>
<table>
<tr>
<td>
<b><%# DataBinder.Eval(Container.DataItem, "Attributes['listname']") %></b> (<%# ViewHelper.GetBooleanValue("list", "type",(bool)((Entity)Container.DataItem).Attributes["type"]) %>)
</td>
</tr>
<tr>
<td>
<%# DataBinder.Eval(Container.DataItem, "Attributes['membercount']") %> Leden
</td>
</tr>
</table>
</ItemTemplate>
</telerik:RadComboBox>
我想在组合框中将关键字listname
的属性值显示为DataTextField,但我无法弄清楚如何执行此操作。我在这里查了一下,在组合框中使用词典我可以找到的所有内容都涉及使用字典作为数据源。我认为这是可能的,因为它可以在ItemTemplate中工作,我可以使用Attributes[listname]
在DataField属性的RadGrid中使用它,但是当我尝试这个构造时,它并没有。工作。
我怎样才能让它发挥作用?