【发布时间】:2015-10-08 09:43:20
【问题描述】:
如何以编程方式更改 DataBinding 索引位置?
例如:我有一个名为 MYLIST<T> 的 list<> 集合,并且在表单 TEXTBOX1 和 LISTBOX1 上放置了两个控件,这两个控件都是绑定MYLIST<T>。
在执行时,从 MYLIST 填充 LISTBOX 控件,当我单击 LISTBOX1-Item 时,TEXTBOX1.Text 根据 MYLIST 的选定索引更改,因为这两个控件都与 MY LIST 绑定。
我想以编程方式设置列表索引位置 2。就像我单击一个按钮时一样,因此 TEXTBOX1.Text 应根据列表索引 [2] 更改,单击 LISTBOX1 的第二项时的行为相同。
我试过 .Select 但没有运气,
这里是示例代码:
public partial class Form1 : Form
{
public sealed class Person
{
public string name { get; set; }
}
private List<Person> myList = new List<Person>();
public Form1()
{
InitializeComponent();
myList.Add(new Person(){name = "MyName1"});
myList.Add(new Person(){name = "MyName2"});
myList.Add(new Person(){name = "MyName3"});
textBox1.DataBindings.Add(new Binding("Text", myList, "name"));
listBox1.DataSource = myList;
listBox1.DisplayMember = "name";
listBox1.ValueMember= "name";
}
private void button2_Click(object sender, EventArgs e)
{
myList.Select(person => person.name.StartsWith("MyName2"));
}
}
【问题讨论】:
标签: c# winforms data-binding generic-list