C#Winforms ListBox项目

时间:2012-07-22 00:30:12

标签: c# winforms listboxitems

我在listbox中有多个文本条目,我们称之为ListBox1

我一直在搜索google,social.msdn.microsoft.com和这里。我无法弄清楚如何让每个文本条目在选中时改变一些东西。

string1导致((value1 + value2) / 2)

string2 cuases ((value3 + value4) / 2)

string3导致((value5 + value6) / 2)

我显然很新。

2 个答案:

答案 0 :(得分:3)

您需要处理ListBox.SelectedValueChanged事件。

在main中,或者通过使用设计器,注册事件处理程序:

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;
    }
}

答案 1 :(得分:0)

您可以使用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;
    }