C#,WPF,绑定 DataGrid 两个组合框列,都绑定到一些数据源,我想要什么:当用户从一个组合框列中选择一个项目时,其他组合框列的选定值和项目列表将自动更改。我现在看到的是,第二列的数据源发生了变化,选定的值也发生了变化。但 UI 显示为空,好像没有选择一样。当我单击第二列时,将显示正确的选定值。当第一个组合框的选择发生变化时,我觉得我喜欢一个事件触发器,通知第二个组合框。但不确定如何实现它。谢谢
<dg:DataGrid Grid.Row="1" x:Name="basketDG" Margin="5 0 5 0" Background="White"
AutoGenerateColumns="False"
Style="{StaticResource DataGridStyle}"
SelectionMode="Extended"
GridLinesVisibility="None"
HeadersVisibility="Column" RowDetailsVisibilityMode="VisibleWhenSelected"
ItemsSource="{Binding BasketItems, Mode=OneWay}" CanUserAddRows="False" CanUserDeleteRows="False"
SelectionUnit="FullRow" SelectedItem="{Binding SelectedRelComplete}"
VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Auto"
SelectionChanged="BasketDgSelectionChanged"
Drop="DataGridDrop"
DragOver="DataGridDragOver"
PreviewMouseUp="DGMouseUpEvent"
AllowDrop="True"
ContextMenuOpening="basketDG_ContextMenuOpening"
>
<!-- Column definition -->
<dg:DataGridComboBoxColumn Width="200" Header="Column"
SelectedValueBinding="{Binding Path=ObjParams.ColumnName, UpdateSourceTrigger=PropertyChanged,
diagnostics:PresentationTraceSources.TraceLevel= High}"
DisplayMemberPath="ColName"
SelectedValuePath="ColName">
<dg:DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding Obj.Columns}" />
</Style>
</dg:DataGridComboBoxColumn.ElementStyle>
<dg:DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding Obj.Columns}" />
</Style>
</dg:DataGridComboBoxColumn.EditingElementStyle>
</dg:DataGridComboBoxColumn>
<dg:DataGridComboBoxColumn Header="Time Unit" SelectedValueBinding="{Binding ObjParams.TimeUnit}">
<dg:DataGridComboBoxColumn.ElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding TimeUnitList}" />
</Style>
</dg:DataGridComboBoxColumn.ElementStyle>
<dg:DataGridComboBoxColumn.EditingElementStyle>
<Style TargetType="ComboBox">
<Setter Property="ItemsSource" Value="{Binding TimeUnitList}" />
</Style>
</dg:DataGridComboBoxColumn.EditingElementStyle>
</dg:DataGridComboBoxColumn>
</dg:DataGrid.Columns>
</dg:DataGrid>