RadGrid连续显示两次值(重复)?

时间:2012-03-20 02:46:00

标签: c# asp.net telerik radgrid duplicate-data

如果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标记的另一个问题是,网格中不存在“展开/折叠”按钮。我希望他们在场。

Duplicate values showed in same row

1 个答案:

答案 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";
     }
}