I have a control with ComboBox:
<ComboBox x:Name="TraceComboBox"
ItemsSource="{Binding SingleChannelList}"
SelectedItem="{Binding RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type cc:LogicTriggerSimpleLevelControl}},
Path=SelectedTrace, Mode=TwoWay}">
Here PropertyChangedCallbackfor a property SelectedTracein an OuterControl containing ComboBox:
private static void OnSelectedTraceChanged(DependencyObject d, DependencyPropertyChangedEventArgs e)
{
OuterControl oc = d as OuterControl ;
oc.UpdateSelectedTrace();
}
private void UpdateSelectedTrace()
{
ViewModelType vm = DataContext as ViewModelType;
if (vm != null)
{
if (vm.SingleChannelList != null)
{
SelectedTrace = vm.SingleChannelList[0];
}
}
}
By my logic, the following should happen:
ComboBox (SingleChannelList[2]), . UpdateSelectedTrace(). SelectedTrace, , SingleChannelList[2]. UpdateSelectedTrace() SelectedTrace 1- (SingleChannelList[0]), , . "SelectedTrace" SingleChannelList [0], ComboBox SingleChannelList [0] .
, , :
SelectedTrace SingleChannelList[0], ComboBox SingleChannelList[2] . UpdatingTarget BindingExpression, , SelectedTrace SingleChannelList[0], ComboBox SingleChannelList[2]. , . - , ?