如果GridTemplateColumn
具有UniqueName
属性和<ItemTemplate>
标记,则Telerik的RadGrid会显示两次值。
<telerik:GridTemplateColumn HeaderText="Name" UniqueName="Name">
<ItemTemplate><%# Eval("Name") %></ItemTemplate>
<EditItemTemplate><asp:TextBox ID="txtProductName" runat="server" Text='<%# Eval("Name") %>' Width="100%" MaxLength="256" /></EditItemTemplate>
</telerik:GridTemplateColumn>
如果我删除ItemTemplate
标记,它只显示一次值,但我想有条件地格式化值,我认为我需要ItemTemplate
标记,因为我不想更新我的对象属性(在本例中为Name
)本身。
我需要在NestedHierarchy表中使用UniqueName
属性。如何控制显示值并仅显示一次?
使用ItemTemplate
标记的另一个问题是,网格中不存在“展开/折叠”按钮。我希望他们在场。
答案 0 :(得分:1)
您可以更改项目数据绑定事件RadGrid1_ItemDataBound
上的列。
protected void RadGrid1_ItemDataBound(object sender, GridItemEventArgs e)
{
if (e.Item is GridDataItem && !e.Item.IsInEditMode)
{
var dataBoundItem = e.Item as GridDataItem;
var dto = (yourDto)e.Item.DataItem;
dataBoundItem["Name"] = dto.Name + " special";
}
}