将String Collection绑定到ListView,Windows窗体

Ref*_*din 3 .net c# data-binding collections winforms

我有一个StringCollection,我希望One Way绑定到ListView.同样,ListView应该显示StringCollection的内容.我将以编程方式从集合中删除项目,这样他们就不需要通过ListView与它进行交互.

我有一个带有财产的表格,如此 - >

public DRIUploadForm()
    {
        InitializeComponent();

        lvwDRIClients.DataBindings.Add("Items", this.DirtyDRIClients, "DirtyDRIClients");
    }

private StringCollection _DirtyDRIClients;
public StringCollection DirtyDRIClients 
    { 
        get
        {
            return _DirtyDRIClients;
        }
        set
        {
            _DirtyDRIClients = Settings.Default.DRIUpdates;
        }
    }
Run Code Online (Sandbox Code Playgroud)

小智 8

您实际上无法绑定到ListView控件,因为它不支持绑定.您需要以编程方式添加项目.但是,您可以绑定到ListBox,但正如其他人所说,您不能直接绑定字符串,您需要为它们创建一个包装器.像这样......

public partial class Form1 : Form
{
    List<Item> items = new List<Item>
    {
        new Item { Value = "One" },
        new Item { Value = "Two" },
        new Item { Value = "Three" },
    };

    public Form1()
    {
        InitializeComponent();

        listBox1.DataSource = items;
        listBox1.DisplayMember = "Value";
    }
}

public class Item
{
    public string Value { get; set; }
}
Run Code Online (Sandbox Code Playgroud)