我目前正在尝试实现一个相对简单的数据管理应用程序。
我有一个 classMember和 a BindingList<Member> membersList,以及 aListBox和一些TextBoxes 。
是ListBox必然的membersList。
现在,理想情况下,我希望将TextBoxes 绑定到ListBox.SelectedItem,以便用户在 中选择的任何元素在ListBox编辑TextBox中的元素时membersList都会更新。
我尝试将TextBoxes 绑定到ListBox.SelectedItem,但这使得 成为绑定创建时引用的Binding实际元素,而不是 中选择的任何项目。ListBox.SelectedItemListBox
firstNameTextBox.DataBindings.Add(new Binding("Text",
membersList.SelectedItem, "firstName", false,
DataSourceUpdateMode.OnPropertyChanged));实际上,我已经通过在事件处理程序中清除并重新创建 es 来解决这个问题Bindings,但这感觉非常“hacky”,我怀疑有一个更标准的解决方案。TextBoxmembersList_SelectedIndexChanged(object sender, EventArgs e)
我的另一个想法是将 s 设置为事件处理程序内部的Bindinga ,但随后我必须手动将更改写入相应的项目,这也让我觉得这不是最佳解决方案。Member temporaryMemberListBox.SelectedItemmembersList_SelectedIndexChanged(object sender, EventArgs e)membersList
有没有一种方法可以实现Binding动态化,即在创建时,我向它表明数据源正在发生变化?
或者一种更改Binding数据源而不删除它并创建新数据源的标准方法?(或者这实际上是最佳实践?)
(另一件事要提的是:我是 C# 新手Bindings,在寻找解决方案时,我发现显然有两个不同的类,一个在命名空间中System.Windows.Data,另一个在System.Windows.Forms命名空间中。我想我正在使用后者的类。也许我应该使用另一个?)
 德玛西亚99
德玛西亚99 
					GCT1015
 随时随地看视频慕课网APP
随时随地看视频慕课网APP
相关分类