У меня есть поле со списком, выбранное значение которого привязано к свойству в модели формы, но когда пользователь делает выбор, метод Set свойства не используется. Я знаю это, потому что у меня есть точка останова на методе set, и она не срабатывает. Кто-нибудь может сказать мне, что я могу ошибаться с привязкой выбранного значения?
Вот XAML для поля со списком:
<ComboBox Name="NewOffcode" Margin="0,0,0,1"
SelectedValue="{Binding Form104DModel.SelectedNewOffenseCode, UpdateSourceTrigger=PropertyChanged}"
SelectedIndex="-1"
ItemsSource="{Binding Form104DModel.NewOffenseCodes, UpdateSourceTrigger=PropertyChanged}"
IsEnabled="{qc:Binding '$P', P={Binding Path=Form104DModel.IsNewOffCodeEnabled, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}}"
FontWeight="Bold" FontSize="10" >
<ComboBox.ItemTemplate>
<DataTemplate>
<WrapPanel>
<TextBlock FontFamily="Arial" FontSize="10">
<TextBlock.Style>
<Style TargetType="TextBlock">
<Setter Property="IsEnabled" Value="True" />
<Setter Property="Text" Value="{Binding Code}"/>
</Style>
</TextBlock.Style>
</TextBlock>
<TextBlock FontFamily="Arial" FontSize="10" FontWeight="Bold" Text=" - "/>
<TextBlock FontFamily="Arial" FontSize="10" FontWeight="Bold" Text="{Binding Description}"/>
</WrapPanel>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
А вот свойство, к которому якобы привязано SelectedValue:
private string selectedNewOffenseCode;
public string SelectedNewOffenseCode
{
get
{
return this.selectedNewOffenseCode;
}
set
{
if (this.selectedNewOffenseCode != value)
{
this.selectedNewOffenseCode = value;
this.IsNewOffCodeEnabled = true;
this.newOffenseDescriptions.Repopulate(CodeCache.GetArrestCharges(value));
}
}
}