如何从选定的ListBox中检索数据?

时间:2011-06-02 04:58:55

标签: c#

在C#.Net中,我正在尝试从选定的ListBox中检索数据。

EG。首先,我在ListBox中显示了从MSSQL 2008数据库中检索到的许多数据。     当我从该列表框中选择单个数据时,我想将所选数据显示到文本框中... 我怎样才能做到这一点? 我需要你的答案,因为我只是初学者, 如果你知道的话请回答我 感谢

3 个答案:

答案 0 :(得分:2)

陷阱ListBox SelectedIndexChanged事件,例如你可以做到,

private void listBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
    textBox1.Text = listBox1.SelectedItem.ToString(); //let textBox1 be your TextBox name and listBox1 be your ListBox name
}

答案 1 :(得分:2)

这实际上取决于您将数据存储到列表中的方式。是这个简单的字符串还是一些复杂的对象,无论是哪种情况,您都可以将所选项目强制转换为适当的类型。 例如。 如果您的列表框仅包含字符串类型项,则您将通过

获取所选项
string value=(string) this.listBox1.SelectedItem;

如果您的列表框包含其他复杂类型,您将通过

获取所选项目
SomeComplexObject value=(SomeComplexObject) this.listBox1.SelectedItem;

或者,如果您将列表框绑定到某种数据表或数据集。 您可以使用

获取所选项目的值
string value=listBox1.SelectedValue.ToString();

现在, 当列表框选择索引更改时。您可以使用设置文本框值。 首先,订阅列表框索引已更改事件

 this.listBox1.SelectedIndexChanged+=new EventHandler(changed);

和你的经纪人。

 private void changed(object sender,EventArgs args)
        {
            //set your text box text property here
            //with the code provided earlier
        }

答案 2 :(得分:1)

在ASP.NET中使用以下代码:

var selectedValue = listBoxObj.SelectedItem.value;