0

我刚刚加入了一个使用 wpf 和数据绑定的项目。我有一个 ComboBox,它首先从视图模型中读取它的选定值,然后立即将默认(不正确)值写回视图模型。调用堆栈说 InitializeComponent() 是 get 和 set 调用的来源。有十几个其他控件的行为不是这样的。是否有一些我缺少的属性可以防止第一次错误设置的值?

<ComboBox Grid.Column="1" Grid.Row="2" 
      Name="traceFileOptions"  ItemsSource="{Binding TraceFileOptionsCollection}"  
      SelectedValue="{Binding FileOption}"  DisplayMemberPath="Text" SelectedValuePath="Value" 
      IsEnabled="{Binding WriteToFile}" SelectedIndex="{Binding FileTraceComboBoxDefault}" />
4

1 回答 1

0

看起来它正在按照您的要求做:

第一的,

SelectedValue="{Binding FileOption}"

(并且,这是一个绑定,因此随后设置选择将更新视图模型中的属性)

然后,

SelectedIndex="{Binding FileTraceComboBoxDefault}" 

您可能只想设置/绑定 SelectedValue 或 SelectedIndex 之一。

于 2013-08-13T21:57:18.007 回答