RadGrid отображает значение дважды (дублируется) подряд? - PullRequest
0 голосов
/ 20 марта 2012

Radrikrid Telerik отображает значение дважды, если GridTemplateColumn имеет атрибут UniqueName и тег <ItemTemplate>.

<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).

Мне нужен атрибут UniqueName, используемый в таблицах NestedHierarchy.Как сохранить контроль над отображаемым значением и отобразить его только один раз?

Еще одна проблема с тегом ItemTemplate заключается в том, что кнопки «Развернуть / Свернуть» отсутствуют в сетке.Я хочу, чтобы они присутствовали.

Duplicate values showed in same row

1 Ответ

1 голос
/ 22 марта 2012

Вы можете изменить столбец в событии связывания данных элемента 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";
     }
}
...