Blazor Using Tables
A funcionalidade do Infragistics Blazor Excel Engine WorksheetTable
permite formatar seus dados em linhas e colunas Os dados em uma tabela de planilha podem ser gerenciados independentemente dos dados nas outras linhas e colunas em um Worksheet
.
Adding a Table to a Worksheet
As tabelas de planilha no Infragistics Blazor Mecanismo do WorksheetTable
Excel são representadas pelo objeto e são adicionadas à coleção da Tables
planilha. Para adicionar uma tabela, você precisa invocar o Add
método nesta coleção. Nesse método, você pode especificar a região na qual deseja adicionar uma tabela, se a tabela deve ou não conter cabeçalhos e, opcionalmente, especificar o estilo da tabela como um WorksheetTableStyle
objeto.
O código a seguir demonstra como você pode adicionar uma tabela com cabeçalhos a uma Worksheet
região de A1 a G10, em que A1 a G1 serão os cabeçalhos de coluna:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.Worksheets.Add("Sheet1");
worksheet.Tables.Add("A1:G10", true);
Depois de adicionar uma tabela, você pode modificá-la adicionando ou excluindo linhas e colunas chamando os InsertColumns
métodos the, InsertDataRows
, DeleteColumns
, ou DeleteDataRows
no WorksheetTable
. Você também pode definir um novo intervalo de tabela usando o Resize
método da tabela.
O trecho de código a seguir mostra o uso desses métodos:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.Worksheets.Add("Sheet1");
var table = worksheet.Tables.Add("A1:G10", true);
//Will add 5 columns at index 1.
table.InsertColumns(1, 5);
//Will add 5 rows at index 0.
table.InsertDataRows(0, 5);
//Will delete 5 columns starting at index 1.
table.DeleteColumns(1, 5);
//Will delete 5 rows starting at index 0.
table.DeleteDataRows(0, 5);
//Will resize the table to be in the region of A1:G15.
table.Resize("A1:G15");
Filtering Tables
A filtragem é feita aplicando um filtro em uma coluna no WorksheetTable
. Quando o filtro é aplicado em uma coluna, todos os filtros na tabela serão reavaliados para determinar quais linhas atendem aos critérios de todos os filtros aplicados.
Se os dados na tabela forem alterados posteriormente ou você alterar a Hidden
propriedade das linhas, as condições do filtro não serão reavaliadas automaticamente. As condições de filtro em uma tabela só são reaplicadas quando os filtros de coluna da tabela são adicionados, removidos, modificados ou quando o ReapplyFilters
método é chamado na tabela.
A seguir estão os tipos de filtro disponíveis para as colunas do seu WorksheetTable
:
AverageFilter
- As células podem ser filtradas com base no fato de estarem acima ou abaixo do valor médio de todas as células na coluna.CustomFilter
- As células podem ser filtradas com base em uma ou mais condições personalizadas.DatePeriodFilter
- Somente células com datas em um mês ou trimestre específico de qualquer ano serão exibidas.FillFilter
- Somente as células com um preenchimento específico serão exibidas.FixedValuesFilter
- As células que correspondem apenas a valores de exibição específicos ou que se enquadram em um grupo específico de datas/horas serão exibidas.FontColorFilter
- Somente células com uma cor de fonte específica serão exibidas.RelativeDateRangeFilter
- As células com valores de data podem ser filtradas com base em se elas ocorrem dentro de um intervalo de tempo relativo da data em que o filtro foi aplicado, como o dia seguinte ou o trimestre anterior.TopOrBottomFilter
- Este filtro permite filtrar os valores N superiores ou inferiores. Também permite filtrar os valores N% superior ou inferior.YearToDateFilter
- As células com valores de data podem ser filtradas se ocorrerem entre o início do ano e a data em que o filtro foi aplicado.
O snippet de código a seguir demonstra como aplicar um filtro "acima da média" à primeira coluna de a WorksheetTable
:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.Worksheets.Add("Sheet1");
var table = worksheet.Tables.Add("A1:G10", true);
table.Columns[0].ApplyAverageFilter(Documents.Excel.Filtering.AverageFilterType.AboveAverage);
Sorting Tables
A classificação é feita definindo uma condição de classificação em uma coluna da tabela. Quando uma condição de classificação é definida em uma coluna, todas as condições de classificação na tabela serão reavaliadas para determinar a ordem das células na tabela. Quando as células precisam ser movidas para atender aos seus critérios de classificação, a linha inteira de células na tabela é movida como uma unidade.
Se os dados na tabela forem alterados posteriormente, as condições de classificação não serão reavaliadas automaticamente. As condições de classificação em uma tabela só são reaplicadas quando as condições de classificação são adicionadas, removidas, modificadas ou quando o ReapplySortConditions
método é chamado na tabela. Quando as condições de classificação são reavaliadas, somente as células visíveis são classificadas. Todas as células em linhas ocultas são mantidas no lugar.
Além de acessar as condições de classificação das colunas da tabela, elas também são expostas fora da WorksheetTable
SortConditions
coleção da SortSettings
propriedade. Esta é uma coleção ordenada de colunas/pares de condições de classificação. A ordem dessa coleção é a precedência da classificação.
Os seguintes tipos de condições de classificação estão disponíveis para serem definidos em colunas:
OrderedSortCondition
- Sort cells in an ascending or descending order based on their value.CustomListSortCondition
- Classifique as células em uma ordem definida com base em seu texto ou valor de exibição. Por exemplo, isso pode ser útil para classificar os dias conforme eles aparecem em um calendário, em vez de em ordem alfabética.FillSortCondition
- Classifique as células com base no preenchimento de um padrão ou gradiente específico.FontColorSortCondition
- Classifique as células com base em se a fonte é de uma cor específica.
Há também uma CaseSensitive
propriedade no SortSettings
of the WorksheetTable
para determinar se as strings devem ser classificadas com distinção entre maiúsculas e minúsculas ou não.
O snippet de código a seguir demonstra como aplicar um OrderedSortCondition
a um WorksheetTable
:
var workbook = new Workbook(WorkbookFormat.Excel2007);
var worksheet = workbook.Worksheets.Add("Sheet1");
var table = worksheet.Tables.Add("A1:G10", true);
table.Columns[0].SortCondition = new Infragistics.Documents.Excel.Sorting.OrderedSortCondition(Documents.Excel.Sorting.SortDirection.Ascending);
//Alternative
table.SortSettings.SortConditions.Add(table.Columns[0], new Infragistics.Documents.Excel.Sorting.OrderedSortCondition(Documents.Excel.Sorting.SortDirection.Ascending));
API References
DeleteColumns
DeleteDataRows
FillFilter
InsertColumns
InsertDataRows
SortConditions
SortSettings
Tables
WorksheetTableStyle
WorksheetTable