WPF - usercontrol之间的绑定

时间:2016-07-16 08:19:44

标签: wpf vb.net user-controls

我有一个用户控件(比如A),其中有两个ContentPresenter,每个都绑定到另一个用户控件(比如B和C)。

在两个UserControl中的一个(比方说B)中,我有一个MyBox的listBox。

         <ListBox  ItemsSource="{Binding MyItemList}" SelectedItem="{Binding SelectedMyItem}">

MyItem代码:

Public Class MyItem
   Implements INotifyPropertyChanged

   Private m_Name As Integer
   Public Property Name As Integer
      Get
      Return m_Name 
      End Get
      Set(value As Integer)
         m_Name = value
      End Set
   End Property

   ...

End Class

在另一个(比方说C)中我有TextBoxes,我想绑定到SelectedItem属性(比如MyItem.Name)。

        <TextBox Text="{Binding SelectedItem.Name}"/>

有可能吗?因为我找不到一个。

1 个答案:

答案 0 :(得分:0)

你说的几乎是不可能的。

将文本框文本绑定到视图模型c中的某个属性。将列表选定项绑定到视图模型b中的某个属性。

当选定项目发生更改时,将带有参数的事件作为字符串发送为字符串。处理viewmodel c中的事件并使用收到的Name参数更新文本框文本。

这样就可以了。

另一种可能的方法是在a viewmodel中创建b和c视图模型实例,并在更改bviewmodelinstance.selectedListItem属性时更新cviewmodelinstance.TextboxPropertyName。

相关问题