2012-03-20 15 views
0

TelerikのRadGridは、GridTemplateColumnUniqueName属性と<ItemTemplate>タグがある場合、値を2回表示します。RadGridは、値を2回(重複して)連続して表示しますか?

<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というタグがもう1つある問題は、展開/折りたたみボタンがグリッドに存在しないことです。私はそれらが存在するようにします。

Duplicate values showed in same row

+1

なぜあなたはbackEndまたはDataviewでフィルタリングしませんか? –

+0

@Ravi:私は実際の値を変更したくないです。たとえば、上記の表では、ItemTemplateを使用して「Blue Blood special」を表示したいと考えています。しかし、編集では、EditTemplateは「青血」のみを表示する必要があります。 –

答えて

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"; 
    } 
} 
+0

ありがとうございます。それは動作します。 –

関連する問題