我有一个带有 GridTemplateColumn 的 telerik radgrid,如下所示,在 C# ASP.NET 4.0 Web 表单中。
如您所见,在 EditItemTemplate 中,我使用的是 RadComboBox,其中 DataValueField 具有 ID 号,DataTextField 具有人类可读的文本。
我的问题是,如何更改 ItemTemplate 中的文本以显示人类可读的值而不是 ID?值 Alias1 来自网格数据源,它是 Id。
感谢您提供的任何帮助!
<telerik:GridTemplateColumn UniqueName="Alias1" Display="true" DataField="Alias1" HeaderText="Alias1" SortExpression="Alias1">
<ItemTemplate>
<asp:Label ID="lblField30" CssClass="text" runat="server" Text='<%# Bind("Alias1") %>'></asp:Label>
</ItemTemplate>
<EditItemTemplate>
<telerik:RadComboBox ID="RadComboBox16" runat="server" Skin="Outlook" Height="150" DataSourceID="SqlDataSourceAliasOptions" DataTextField="aliasText" DataValueField="aliasid" SelectedValue='<%#Bind("Alias1") %>'>
</telerik:RadComboBox>
</EditItemTemplate>
</telerik:GridTemplateColumn>
最佳答案
您需要像这样更改 ItemTemplate 绑定(bind):
<ItemTemplate>
<asp:Label ID="lblField30" CssClass="text" runat="server" Text='<%# Eval("aliasText") %>'></asp:Label>
</ItemTemplate>
当然,您的绑定(bind)实体必须具有“aliasText”属性。如果您要绑定(bind)类似 DataTable 的内容,请确保其中包含“aliasText”列。
关于asp.net - 如何将 ItemTemplate 文本值设置为组合框 DataTextField 而不是 DataValueField,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15395656/