Pregunta

Tengo una cuadrícula similar a la siguiente, la mía tiene algunas columnas de datos más.
Me gustaría ocultar las columnas ID y ParentID.Pero si oculto la ID, la funcionalidad Expandir / Contraer deja de existir.Todas las filas se muestran como en una tabla normal.

ingrese la descripción de la imagen aquí

¿Cómo lo logro?

<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" aún mantiene OrderID en el html, por lo que esta funcionalidad debería funcionar, pero no es así.

¿Alguna idea de alguien?

¿Fue útil?

Solución

Ok.Encontré una solución después de analizar más de cerca el código subyacente.
En mi caso, quería el botón Expandir-Contraer en la columna Nombre.
Por eso:
En el archivo .aspx, tuve que agregar Nombre a DataKeyNames.Se eliminaron las columnas de cuadrícula ID y ParentId.Se agregó el atributo UniqueName a Name gridcolumn con el valor Name.
En el código subyacente, he pasado Nombre para un nombre de columna único al crear el botón Expandir-Contraer.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top