c# - 将列表数组中的值绑定(bind)到列表框

标签 c# winforms data-binding listbox

任何人都可以给出一个简短的例子来将列表数组中的值绑定(bind)到 c#.net 中的列表框

最佳答案

这取决于你的列表数组是怎样的。

让我们从一个简单的示例开始:

List<string> listToBind = new List<string> { "AA", "BB", "CC" };
this.listBox1.DataSource = listToBind;

这里我们有一个字符串列表,将在列表框中显示为项目。

alt text

否则,如果您的列表项更复杂(例如自定义类),您可以这样做:

例如,MyClass 定义如下:

public class MyClass
{
    public int Id { get; set; }
    public string Text { get; set; }
    public MyClass(int id, string text)
    {
        this.Id = id;
        this.Text = text;
    }
}

这是绑定(bind)部分:

List<MyClass> listToBind = new List<MyClass> { new MyClass(1, "One"), new MyClass(2, "Two") };
this.listBox1.DisplayMember = "Text";
this.listBox1.ValueMember = "Id"; // optional depending on your needs
this.listBox1.DataSource = listToBind;

您将得到一个仅显示项目文本的列表框。 同时将 ValueMember 设置为您类的特定属性将使 listBox1.SelectedValue 包含选定的 Id 值而不是整个类实例。

注意
取消设置 DisplayMember,您将获得列表条目的 ToString() 结果作为 ListBox 项目的显示文本。

alt text

关于c# - 将列表数组中的值绑定(bind)到列表框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4278154/

相关文章:

c# - UWP 中的自定义 MarkupExtension

c# - 如何启动一个停止的线程

c# - 未找到 ObjectDataProvider wpf 本地类型

c# - WPF 数据绑定(bind)的新手

javascript - knockout 引用绑定(bind)

c# - 从数据库中选择指定日期范围内的数据

c# - OpenXML SDK - xls

c# - 后期绑定(bind)数组

c# - 有没有办法在调用 SetToolTip 时抑制 ToolTip Popup 事件?

c# - 向 MS Chart 控件 C# 添加滚动条