Listview 取選中的值 C#

cosair發表於2010-10-04

原文出處: http://hi.baidu.com/yoho_boy/blog/item/e409ded9e74530e338012f41.html

 

Listview 取選中的值 C#
2009-09-29 23:16
1.
程式碼:

int Index =0;

if(this.listView1.SelectedItems.Count>0)//判斷listview有被選中項
{
Index =this.listView1.SelectedItems[0].Index;//取當前選中項的index,SelectedItems[0]這必須為0
String aa = listView1.Items[Index].SubItems[0].Text;//用我們剛取到的index取被選中的某一列的值從0開始
MessageBox.Show(aa);
}


2.
foreach(ListViewItem item in listView1.SelectedItems)
{
foreach(ListViewItem.ListViewSubItem subItem in item.SubItems)
{ //subItem 為一行中的子項。
}
}


3.
foreach ( ListViewItem item in ListView1.SelectedItems )
{ item.SubItems[1].Text }


4.

//用這個事件就可以取得當前選擇的Item了

private void listView1_ItemSelectionChanged(object sender, ListViewItemSelectionChangedEventArgs e)
{
textBox1.Text = e.Item.Text;
}


5.如何刪除ListView中選中的專案?
題目要求:在ListView控制元件中,刪除選中的專案。(如下圖,在"示例欄位"列表框中選擇了3個專案,要求在點選了">"按鈕後,將這3項新增到"新表中的欄位"列表框中,同時將"示例欄位"中選擇的這3項從列表框中刪除)

 

執行後的結果如下圖所示:

 

關鍵的實現程式碼(按鈕">",名稱為:btnAdd)如下:

private void btnAdd_Click(object sender, EventArgs e)
{

//通過迴圈先將選中的專案新增到"新表中的欄位"列表框(lstNewFields)中

for (int count = 0; count<this.lstSampleFields.SelectedItems.Count; count++)
{
this.lstNewFields.Items.Add(this.lstSampleFields.SelectedItems[count]);

}

//通過迴圈將選中的專案從"示例欄位"列表框(lstSampleFields)中刪除

while (this.lstSampleFields.SelectedItems.Count != 0)
{
this.lstSampleFields.Items.Remove(this.lstSampleFields.SelectedItems[0]);
}

}

=======================================

取listview當前被選中的任一列的值

int Index = 0;

if (this.listview1.SelectedItems.Count > 0) //判斷listview有被選中項
{
Index = this.listview1.SelectedItems[0].Index; //取當前選中項的index,SelectedItems[0]這必須為0
String aa = listview1.Items[Index].SubItems[1].Text; //用我們剛取到的index取被選中的某一列的值從0開始
}

 

相關文章