我是WPF的新手,請耐心等待。我在我的WPF窗口上有一個ComboBox,ItemSource屬性綁定到一個字符串屬性列表(國家)和SelectedItem綁定到一個字符串屬性(SelectedCountry)。這兩個屬性都在代碼後面 - 我將DataContext設置爲「this」(即Window)。WPF默認值(使用樣式觸發器)綁定
組合框XAML是:
<ComboBox Name="CountryComboBox"
VerticalAlignment="Center"
Width="200"
ItemsSource="{Binding Path=Countries, Mode=OneTime}"
SelectedItem="{Binding Path=SelectedCountry, Mode=TwoWay}">
</ComboBox>
我想有一個默認的「 - 請選擇 - 」時未選擇項目時顯示的選項,因此我把下面的XAML中的App.xaml:
<Style TargetType="ComboBox">
<Style.Triggers>
<Trigger Property="SelectedItem" Value="{x:Null}">
<Setter Property="IsEditable" Value="true" />
<Setter Property="IsReadOnly" Value="true" />
<Setter Property="Text" Value="- Please Select -" />
</Trigger>
</Style.Triggers>
</Style>
當我的窗口第一次顯示時,組合框確實有「 - 請選擇 - 」文本按預期。然後,當我在組合框中選擇一個值時,SelectedCountry被適當填充,但是當我將SelectedCountry屬性賦值爲「null」時,當我期望它返回到「 - 請選擇 - 」。我究竟做錯了什麼?
謝謝。
嘗試添加了當 ComboBox.SelectedValue == NULL觸發 – 2013-03-15 18:37:20