Wpf 三向绑定(双向绑定中的两个)。可能吗?
我不熟悉数据绑定,所以这个问题可能看起来相当愚蠢。 我使用Xceed WPF Toolkit的DataGridControl,我认为它的用法与DataGrid控件非常相似。我打算将DataGridControl SelectedItem绑定到网格内容。相关控件和对象变量包括:Wpf 三向绑定(双向绑定中的两个)。可能吗?,wpf,binding,master-detail,Wpf,Binding,Master Detail,我不熟悉数据绑定,所以这个问题可能看起来相当愚蠢。 我使用Xceed WPF Toolkit的DataGridControl,我认为它的用法与DataGrid控件非常相似。我打算将DataGridControl SelectedItem绑定到网格内容。相关控件和对象变量包括: GridKaryawan --> DataGridControl Grid --> without name, for displaying details karyawans --> Observabl
GridKaryawan --> DataGridControl
Grid --> without name, for displaying details
karyawans --> ObservableCollection<BiodataKaryawan> --> collection of business objects
selKaryawan --> (intended to be) the selected business object
* The business object "BiodataKaryawan" has already implemented INFC.
GridKaryawan-->DataGridControl
不带名称的网格-->用于显示详细信息
karyawans-->ObservableCollection-->业务对象集合
selKaryawan-->(打算成为)所选业务对象
*业务对象“BiodataKaryawan”已经实现了INFC。
到目前为止,我一直在做(仅显示相关部分):
....
....
在代码隐藏处:
public ObservableCollection<BiodataKaryawan> karyawans { get; set; }
public BiodataKaryawan selKaryawan { get; set; }
公共可观测集合karyawans{get;set;}
公共BiodataKaryawan selKaryawan{get;set;}
在网格上:
<Grid DataContext="{Binding Path=selKaryawan, Mode=TwoWay}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition />
....
....
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
....
....
</Grid.RowDefinitions>
<Label Grid.Row="0">Nama:</Label>
<Label Grid.Row="1">Panggilan:</Label>
....
....
<TextBox Grid.Column="1" Grid.Row="1" x:Name="txtNama" Text="{Binding Nama}"/>
<TextBox Grid.Column="1" Grid.Row="2" x:Name="txtPanggilan" Text="{Binding Panggilan}" />
....
....
</Grid>
....
....
....
....
非农产品市场准入:
庞吉兰:
....
....
....
....
我已成功将DataGridControl.SelectedItem绑定到网格。但是我想在代码后面使用一个“selKaryawan”对象绑定它们,因为表单还支持创建新的“BiodataKaryawan”,我打算使用一个按钮“createnew”将一个新的BiodataKaryawan对象分配给selKaryawan。
但是绑定失败了。当我在datagrid中选择一行时,详细信息并不像我将其绑定到“GridKaryawan.SelectedItem”时那样显示。我哪里出错了?还是有可能
提前感谢您的回答。我认为您需要在codebehind中实现INotifyPropertyChanged,并在selKaryawan属性的setter中引发PropertyChanged事件
<Grid DataContext="{Binding Path=selKaryawan, Mode=TwoWay}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition />
....
....
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
....
....
</Grid.RowDefinitions>
<Label Grid.Row="0">Nama:</Label>
<Label Grid.Row="1">Panggilan:</Label>
....
....
<TextBox Grid.Column="1" Grid.Row="1" x:Name="txtNama" Text="{Binding Nama}"/>
<TextBox Grid.Column="1" Grid.Row="2" x:Name="txtPanggilan" Text="{Binding Panggilan}" />
....
....
</Grid>