React Hierarchical Grid Column Hiding

    O Ignite UI for React tem uma interface do usuário interna que oculta colunas, que pode ser usada por meio da barra de ferramentas React Grade Hierárquica para alterar o estado visível das colunas. Os desenvolvedores têm a flexibilidade de definir a interface do usuário de ocultação de coluna em qualquer lugar da página, conforme necessário. O recurso React Hierarchical Grid Column Hiding é especialmente útil quando se deseja diminuir o tamanho da grade e eliminar a necessidade de tabulação em campos redundantes.

    React Hierarchical Grid Column Hiding Example

    Hierarchical Grid Setup

    Vamos começar criando nosso IgrHierarchicalGrid e vinculando-o aos nossos dados. Também habilitaremos a filtragem e a classificação das colunas.

    <IgrHierarchicalGrid autoGenerate={false} data={singersData} primaryKey="ID" allowFiltering={true} ref={hierarchicalGrid1Ref}>
        <IgrColumn field="Artist" header="Artist" dataType="string" sortable={true}></IgrColumn>
        <IgrColumn field="Photo" header="Photo" dataType="image"></IgrColumn>
        <IgrColumn field="Debut" header="Debut" dataType="number" hidden={true}></IgrColumn>
        <IgrColumn field="GrammyNominations" header="Grammy Nominations" dataType="number" sortable={true} hidden={true}></IgrColumn>
        <IgrColumn field="GrammyAwards" header="Grammy Awards" dataType="number" sortable={true}></IgrColumn>
    </IgrHierarchicalGrid>
    

    Toolbar's Column Hiding UI

    A interface do usuário de ocultação de coluna interna é colocada dentro de uma DropDown barra de ferramentas do IgrHierarchicalGrid. Podemos mostrar/ocultar a interface do usuário de ocultação de coluna usando esse menu suspenso exato.

    Para isso, tudo o que precisamos fazer é definir o e o IgrGridToolbarActions​ ​IgrGridToolbarHiding interior do IgrHierarchicalGrid.

    <IgrHierarchicalGrid>
        <IgrGridToolbar>
            <IgrGridToolbarActions>
                <IgrGridToolbarHiding></IgrGridToolbarHiding>
            </IgrGridToolbarActions>
        </IgrGridToolbar>
    </IgrHierarchicalGrid>
    

    O nos IgrHierarchicalGrid fornece algumas propriedades úteis quando se trata de usar a interface do usuário de ocultação de coluna da barra de ferramentas.

    Ao usar a title propriedade, definiremos o título que é exibido dentro do botão suspenso na barra de ferramentas.

    <IgrHierarchicalGrid>
        <IgrGridToolbar>
            <IgrGridToolbarActions>
                <IgrGridToolbarHiding title="Column Hiding"></IgrGridToolbarHiding>
            </IgrGridToolbarActions>
        </IgrGridToolbar>
    </IgrHierarchicalGrid>
    

    Você pode ver o resultado do código acima no início deste artigo na seção Exemplo de ocultação de coluna React.

    Disable hiding of a column

    Podemos facilmente impedir que o usuário possa ocultar colunas por meio da interface do usuário de ocultação de coluna simplesmente definindo sua disableHiding propriedade como true.

    <IgrHierarchicalGrid>
        <IgrColumn field="Artist" dataType="string" sortable={true} disableHiding={true}></IgrColumn>
        <IgrColumn field="GrammyAwards" dataType="string" sortable={true} disableHiding={true}></IgrColumn>
    
        <IgrRowIsland>
            <IgrColumn field="Album" dataType="string" sortable={true} disableHiding={true}></IgrColumn>
        </IgrRowIsland>
    </IgrHierarchicalGrid>
    

    Styling

    A grade pode ser ainda mais personalizada definindo algumas das variáveis CSS disponíveis. Para conseguir isso, usaremos uma classe que primeiro atribuiremos à grade:

    <IgrHierarchicalGrid className="hierarchical-grid"></IgrHierarchicalGrid>
    

    Em seguida, defina as variáveis CSS relacionadas para os componentes relacionados. Aplicaremos os estilos também apenas no igx-column-actions, para que o resto da grade não seja afetado:

    .hierarchical-grid {
        /* Main Column Actions styles */
        --ig-column-actions-background-color: #292826;
        --ig-column-actions-title-color: #ffcd0f;
    
        /* Checkbox styles */
        --ig-checkbox-tick-color: #292826;
        --ig-checkbox-label-color: #ffcd0f;
        --ig-checkbox-empty-color: #ffcd0f;
        --ig-checkbox-fill-color: #ffcd0f;
    
        /* Input styles */
        --ig-input-group-idle-text-color: white;
        --ig-input-group-filled-text-color: #ffcd0f;
        --ig-input-group-focused-text-color: #ffcd0f;
        --ig-input-group-focused-border-color: #ffcd0f;
        --ig-input-group-focused-secondary-color: #ffcd0f;
    
        /* Buttons styles */
        --ig-button-foreground: #292826;
        --ig-button-background: #ffcd0f;
        --ig-button-hover-background: #404040;
        --ig-button-hover-foreground: #ffcd0f;
        --ig-button-focus-background: #ffcd0f;
        --ig-button-focus-foreground: black;
        --ig-button-focus-visible-background: #ffcd0f;
        --ig-button-focus-visible-foreground: black;
        --ig-button-disabled-foreground: #ffcd0f;
    }
    

    Demo

    API References

    Neste artigo, aprendemos como usar a interface do usuário de ocultação de coluna interna na barra de ferramentas do . IgrHierarchicalGrid A coluna que oculta a interface do usuário tem mais algumas APIs para explorar, listadas abaixo.

    • ColumnActionsComponent

    Componentes adicionais com APIs relativas que foram usadas:

    IgrColumn properties:

    IgrGridToolbar properties:

    • showProgress

    IgrGridToolbar methods:

    IgrHierarchicalGrid events:

    • ColumnVisibilityChanged

    Additional Resources

    Nossa comunidade é ativa e sempre acolhedora para novas ideias.