0

以下のようなグリッドがあります。さらにいくつかのデータ列があります。
ID列とParentID列を非表示にします。しかし、IDを非表示にすると、展開/折りたたみ機能がなくなります。すべての行は通常のテーブルのように表示されます。

ここに画像の説明を入力してください

どうすればそれを達成できますか?

<telerik:RadGrid ID="RadGrid1" runat="server" DataSourceID="SqlDataSource1" OnColumnCreated="RadGrid1_ColumnCreated"
        OnItemCreated="RadGrid1_ItemCreated" OnItemDataBound="RadGrid1_ItemDataBound" AutoGenerateColumns="false" OnPreRender="RadGrid1_PreRender">
        <MasterTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" AllowSorting="false"
            DataKeyNames="OrderId, MasterId" Width="100%">
            <SelfHierarchySettings ParentKeyName="MasterId" KeyName="OrderId" MaximumDepth="1" />
            <Columns>
                <telerik:GridTemplateColumn HeaderText="Order ID" UniqueName="OrderId" Display="false">                    
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="Name">
                    <ItemTemplate><%# Eval("Name") %></ItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="Number">
                    <ItemTemplate><%# Eval("PassengerNumber") %></ItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridTemplateColumn HeaderText="Total">
                    <ItemTemplate><%# Eval("Total") %></ItemTemplate>
                </telerik:GridTemplateColumn>
            </Columns>
        </MasterTableView>
        <ClientSettings AllowExpandCollapse="true" />
    </telerik:RadGrid>

Display="false"引き続きOrderIDをhtmlに保持するため、この機能は機能するはずですが、機能しません。

誰かアイデアはありますか?

4

1 に答える 1

0

Ok。背後にあるコードを詳しく調べた後、解決策を見つけました。
私の場合、[名前]列の[展開]-[折りたたみ]ボタンが必要でした。
そのために:
.aspxファイルで、DataKeyNamesにNameを追加する必要がありました。IDとParentIdグリッド列を削除しました。UniqueNameNameグリッド列にNameの値を持つ属性を追加しました。
コードビハインドでは、Expand-Collapseボタンを作成するときにuniquecolumnnameにNameを渡しました。

于 2012-02-23T22:12:10.683 に答える