如何以编程方式更改DataBinding索引位置
本文关键字:DataBinding 索引 位置 方式更 编程 | 更新日期: 2023-09-27 18:16:38
如何以编程方式更改DataBinding索引位置?
例如:我有一个list<>
集合命名为 MYLIST<T>
和两个控件放置在窗体TEXTBOX1和LISTBOX1两个控件绑定MYLIST<T>
。
在执行时,LISTBOX控件从MYLIST中填充,当我单击LISTBOX1-Item时,TEXTBOX1。根据MYLIST的选定索引更改文本,因为这两个控件都与MYLIST绑定。
我想以编程方式设置列表索引位置2。比如当我点击一个按钮时,所以是TEXTBOX1。文本应该根据列表索引[2]改变,当点击LISTBOX1的第二项时,行为相同。
I have try .Select but no luck,
下面是示例代码: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"));
}
}
你可以这样写
BindingContext[myList].Position = myList.FindIndex(person => person.name.StartsWith("MyName2"));
你可能会发现下面的MSDN链接很有用BindingContext类和
控制。BindingContext地产