Array
(
)

Foreach dentro de foreach. Melhor opção?

Pjava
   - 24 abr 2012

Tenho um array com 6 posições de int e um de 6 posições também de string.Preciso fazer com que para cada posição do array de int, eu escreva um label que está no array string. Acontece, que estou fazendo errado e por isso ele está sobreescrevendo sempre as anteriores, de forma que o resultado final é apenas um nome e não os seis. Não sei fazer isso. Como eu faço? Abaixo meu código.
int[] dataArray1 = new int[] { 12, 56, 23, 29, 12, 34 };
string[] nomeArray = new string[] {Insuficiência de Fundo / Cartão sem limite,Senha Inválida,Transação não autorizada,Conta Inválida,Sistema Indisponível,Outros };
chartSeries1.PlotArea.XAxis.AxisLabel.Appearance.RotationAngle = (float)360;
foreach (int i in dataArray1)
{
chartSeries1.AddItem(i, );
foreach (string j in nomeArray)
{
chartSeries1.PlotArea.XAxis.AxisLabel.TextBlock.Text = j;//Aqui deve escrever o nome
}
}

Joel Rodrigues
   - 24 abr 2012

Você quer escrever tudo em um único label (chartSeries1.PlotArea.XAxis.AxisLabel)?
Ele está passando todos os valores, o problema é que você está escrevendo tudo em um label só, logo, só permanece o último texto.
Reveja seu código aí pra saber em quais labels você vai colocar esse texto.

Caso você deseje escrever em um único label todos os textos, basta usar o operador de concatenação += ao invés de =.

Pjava
   - 24 abr 2012

É um nome para cada label, agora como eu tenho um array de int e outro de string, não consigo passar para o array nome, a posição em i(int).

Joel Rodrigues
   - 25 abr 2012

Bom, no seu código você está usando um único label, onde estão os demais?
Como você tem um array, basta referenciar cada elemento usando o índice (meuVetor[i]).