Foreach dentro de foreach. Melhor opção?

24/04/2012

0

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
}
}
Pjava

Pjava

Responder

Posts

24/04/2012

Joel Rodrigues

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 =.


Responder

24/04/2012

Pjava

É 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).
Responder

25/04/2012

Joel Rodrigues

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]).
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar