按字符串而不是按索引获取子项
本文关键字:获取 索引 字符串 | 更新日期: 2023-09-27 17:50:46
我有一个简单的ListView
有两列:ID | Name
我将从选定的行获取ID和Name:
ListViewItem item = listView1.SelectedItems[0];
MessageBox.Show(item.subItem[0].Text + " " + item.subItem[1].Text);
是否有办法不通过数字(0或1),而是通过namecoluml代替,类似于这个datareader
的例子?:
sqlite_cmd.CommandText = "select * from mytable;";
sqlite_datareader = sqlite_cmd.ExecuteReader();
// ...
string password = sqlite_datareader["password"].ToString();
对于listView, details:
MessageBox.Show(item.subItem["ID"].Text + " " + item.subItem["Name"].Text);
有办法吗?
SOLVED:
item.SubItems[listView1.Columns.IndexOf(ID)].Text
: -)
您可以完全按照您所演示的那样做,但是您使用的字符串必须是相应ColumnHeader的Name属性的值,而不是Text。Name和Text很可能是相同的,但是Name才是最重要的。
更正:它实际上是ListViewSubItem的名称需要指定,而不是相应的ColumnHeader的名称。