Web Components Grid Column Hiding

    O Ignite UI for Web Components tem uma interface do usuário interna de ocultação de coluna, que pode ser usada por meio da barra de ferramentas Web Components Grid 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 Web Components Ocultação de Coluna de Grade é especialmente útil quando se deseja diminuir o tamanho da grade e eliminar a necessidade de tabulação em campos redundantes.

    Web Components Grid Column Hiding Example

    Grid Setup

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

    <igc-grid id="grid" auto-generate="false" width="100%" height="560px" allow-filtering="true">
        <igc-column field="ID" data-type="String" sortable="true" hidden="true"></igc-column>
        <igc-column field="ContactName" data-type="String" sortable="true" hidden="true"></igc-column>
        <igc-column field="ContactTitle" data-type="String" sortable="true"></igc-column>
        <igc-column field="City" data-type="String" sortable="true"></igc-column>
        <igc-column field="CompanyName" data-type="String" sortable="true"></igc-column>
        <igc-column field="Fax" data-type="String" sortable="true"></igc-column>
        <igc-column field="Address" data-type="String" sortable="true"></igc-column>
        <igc-column field="PostalCode" data-type="String" sortable="true"></igc-column>
        <igc-column field="Country" data-type="String" sortable="true"></igc-column>
        <igc-column field="Phone" data-type="String" sortable="true"></igc-column>
    </igc-grid>
    

    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 IgcGridComponent. 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 IgcGridToolbarActions​ ​IgcGridToolbarHiding interior do IgcGridComponent. Também adicionaremos um título à nossa barra de ferramentas usando o e um estilo personalizado para o IgcGridToolbarTitle wrapper do nosso Grid.

    <igc-grid>
        <igc-grid-toolbar>
            <igc-grid-toolbar-actions>
                <igc-grid-toolbar-hiding></igc-grid-toolbar-hiding>
            </igc-grid-toolbar-actions>
        </igc-grid-toolbar>
    </igc-grid>
    

    O nos IgcGridComponent 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.

    <igc-grid id="grid">
        <igc-grid-toolbar>
            <igc-grid-toolbar-actions>
                <igc-grid-toolbar-hiding id="hidingAction" title="Column Hiding"></igc-grid-toolbar-hiding>
            </igc-grid-toolbar-actions>
        </igc-grid-toolbar>
    </igc-grid>
    

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

    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.

    <igc-grid>
        <igc-column field="ContactName" data-type="String" sortable="true" disable-hiding="true"></igc-column>
        <igc-column field="ContactTitle" data-type="String" sortable="true" disable-hiding="true"></igc-column>
    </igc-grid>
    

    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:

    <igc-grid class="grid"></igc-grid>
    

    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:

    .grid  igx-column-actions {
        /* 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 . IgcGridComponent 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:

    IgcColumnComponent properties:

    IgcGridToolbar properties:

    • showProgress

    IgcGridToolbar methods:

    IgcGridComponent events:

    • ColumnVisibilityChanged

    Additional Resources

    Nossa comunidade é ativa e sempre acolhedora para novas ideias.