我在listbox
中有多個文本項,我們將其稱爲ListBox1
。C#Winforms列表框項目
我一直在谷歌搜索,social.msdn.microsoft.com,和這裏。我無法弄清楚如何讓每個文本條目在選擇時都有所改變。
即
STRING1導致((value1 + value2)/2)
字符串2 cuases ((value3 + value4)/2)
STRING3導致((value5 + value6)/2)
林顯然新。
我在listbox
中有多個文本項,我們將其稱爲ListBox1
。C#Winforms列表框項目
我一直在谷歌搜索,social.msdn.microsoft.com,和這裏。我無法弄清楚如何讓每個文本條目在選擇時都有所改變。
即
STRING1導致((value1 + value2)/2)
字符串2 cuases ((value3 + value4)/2)
STRING3導致((value5 + value6)/2)
林顯然新。
您需要處理ListBox.SelectedValueChanged
事件。
在主,或者通過使用設計,註冊事件處理:
listBox1.SelectedValueChanged += listBox1_SelectedValueChanged;
然後,你的事件處理程序:
void listBox1_SelectedValueChanged(object sender, EventArgs e) {
string value = listBox1.SelectedValue as string;
if (value == null) return;
// What to do now?
switch(value) {
case "string1":
// Do something...
break;
case "string2":
// Do something...
break;
case "string3":
// Do something...
break;
}
}
可以使用SelectedIndexChanged事件時,項目執行代碼選擇。您可以測試SelectedIndex或SelectedItem以查看哪個項目已被選中。
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
if (listBox1.SelectedItems.Count == 0)
return;
int selectedItemIndex = listBox1.SelectedIndex;
string selectedItemText = listBox1.SelectedItem.ToString();
// E.g.
this.Text = selectedItemText;
}
其給我一個錯誤'的呼叫是下列方法或屬性之間曖昧:「Program.Form1.ListBox1_SelectedValueChanged(對象,System.EventArgs)」和「Program.Form1.ListBox1_SelectedValueChanged(對象,System.EventArgs )'' – 2012-07-22 01:16:59
我需要一些上下文來解決這個錯誤。什麼呼叫?你確定你沒有意外地定義處理器方法兩次? – 2012-07-22 01:21:00
就是這樣,感謝您的幫助。 – 2012-07-22 01:24:08