Reputation: 117
I tried to add labels and rows to tablelayout. When i used adding to listview like that:
ListViewItem ite = new ListViewItem(tag);
ite.Text = (tag + " " + description + war);
listView2.Items.Add(ite.Text);
it work,but when i try another it doesn't work. Why? There aren't any errors or exceptions.
foreach (DataElement elementy in sq)
{
for (int k = 0; k == row_number; k = k + 1)
{
tag = elementy.Tag.ToString();
description = elementy.VR.Tag.GetDictionaryEntry().Description;
// ListViewItem ite = new ListViewItem(tag);
//ite.Text = (tag + " " + description + war);
//listView2.Items.Add(ite.Text);
tableLayoutPanel1.GrowStyle = TableLayoutPanelGrowStyle.AddRows;
Label et_tag = new Label();
et_tag.AutoSize= true;
et_tag.Text = tag;
tableLayoutPanel1.Controls.Add(et_tag, 0, k);
Label op = new Label();
op.AutoSize = true;
op.Text = description;
tableLayoutPanel1.Controls.Add(op, 1, k);
}
}
Upvotes: 0
Views: 4267
Reputation: 19160
Not sure how you're initializing row_number, but perhaps it should be something like:
for (int k = 0; k <= row_number; k = k + 1)
Upvotes: 1
Reputation: 3076
Your inner for
loop won't run unless row_number
is 0. Otherwise, it will fail its condition immediately after K is initialized and, as a consequence, do nothing. Your loop almost certainly isn't running. If row_number actually is 0, your loop will run exactly once for every item in your outer foreach
loop.
What condition do you want the loop to run on? Do you mean k < row_number
instead? Do you just want to do this for a single k where k == row_number
, in which case you should simply assign row_number to k and get rid of the loop entirely? I don't know where row_number comes from, so I don't know what this code wants to do.
Upvotes: 1