Oi pessoal.
Ainda não cheguei em uma solução, mas estou quase lá.
O que quero fazer é o seguinte:
<th>Empresa</th>
<th>Unidade</th>
<th>Cargo</th>
<th>Nome</th>
<th>Observação</th>
<tr>
<td rowspan="4">Google</td>
<td>Unidade Teste</td>
<td rowspan="4">Analista de Sistemas</td>
<td>Teste</td>
<td rowspan="4">Observação</td>
</tr>
<tr>
<td hidden>Google</td>
<td>Unidade Teste 1</td>
<td hidden>Analista de Sistemas</td>
<td>Teste 1</td>
<td hidden>Observação</td>
</tr>
<tr>
<td hidden>Google</td>
<td>Unidade Teste 2</td>
<td hidden>Analista de Sistemas</td>
<td>Teste 2</td>
<td hidden>Observação</td>
</tr>
<tr>
<td hidden>Google</td>
<td>Unidade Teste 2</td>
<td hidden>Analista de Sistemas</td>
<td>Teste 3</td>
<td hidden>Observação</td>
</tr>
Sendo que tenho que fazer isto em C#, tentei assim:
for (int row = 0; row < linhasArray.Length; row++)
{
if (row == 0)
{
linhasArray[0] = tr(td(noFiltrado.Item.Empresa).attr($"rowspan = {linhasArray.Length}"),
colunasArray[1],
td(noFiltrado.Item.Cargo).attr($"rowspan = {linhasArray.Length}"),
colunasArray[3],
td(noFiltrado.Item.Observacao).attr($"rowspan = {linhasArray.Length}"));
}
if(row > 0)
{
linhasArray[0] = tr(td(noFiltrado.Item.Empresa).attr("hidden"),
colunasArray[1],
td(noFiltrado.Item.Cargo).attr("hidden"),
colunasArray[3],
td(noFiltrado.Item.Observacao).attr("hidden"));
}
}
A minha idéia aqui seria para a primeira linha da tabela montar cada coluna com rowspan e as demais atribuir o atributo hidden para mesclar. Sendo que esta condição para pegar a primeira linha está pegando sempre. Gostaria de pegar apenas na primeira vez. O que estou fazendo de errado?
Quero fazer exatamente o que fiz no html.
Obrigada Flavia.