我在listView里加载了一些数据,现在想对其进行编辑调整,然后把调整之后的值读到一个数组里,可是每次读的都是原先的值,不知道怎么回事,请大侠指教,在线等,谢谢!以下是代码 private void listView2_AfterLabelEdit(object sender, LabelEditEventArgs e)
{
List<string> ClassesChange = new List<string>();
if (ClassesChange.Count > 0)
{
ClassesChange.Clear();
}
listView2.Update();
for (int i = 0; i < listView2.Items.Count; i++)
{
string ItemsValues = listView2.Items[i].SubItems[0].Text;
ClassesChange.Add(ItemsValues);
}
}
数据是在load事件里面加的,只加载了一列数据。
{
List<string> ClassesChange = new List<string>();
if (ClassesChange.Count > 0)
{
ClassesChange.Clear();
}
listView2.Update();
for (int i = 0; i < listView2.Items.Count; i++)
{
string ItemsValues = listView2.Items[i].SubItems[0].Text;
ClassesChange.Add(ItemsValues);
}
}
数据是在load事件里面加的,只加载了一列数据。
如果在画面上直接编辑,程序里取到的应该还是原来的值,必须要在程序里重新设定listView2里的值!
如果要获取新的数据 使用该事件的参数 LabelEditEventArgs.Label 来获取用户输入的新值
{
string ItemsValues = listView2.Items[i].SubItems[0].Text;if (i==e.Item)ItemsValues=e.Label;
ClassesChange.Add(ItemsValues);
}