WPF,mvvm,在combobox中嵌套了checkbox控件,数据绑定完成后,无法实现双向绑定
在页面上勾选checkbox后,但是vm层的数据不会跟着改变,为什么。vm层的数据可以在页面正确显示,是单向的。xaml代码:<ComboBoxHeight="23"Ho...
在页面上勾选checkbox后,但是vm层的数据不会跟着改变,为什么。
vm层的数据可以在页面正确显示,是单向的。
xaml代码:
<ComboBox Height="23" HorizontalAlignment="Left" Grid.Column="0" Grid.Row="0" Margin="15,4,6,4" x:Name="KeyComboBox" VerticalAlignment="Top" Width="120" Text="Choose Key" ItemsSource="{Binding ImportAllProperty,Mode=TwoWay}"
IsEditable="true" IsReadOnly="true"
IsDropDownOpen="True" StaysOpenOnEdit="True">
<ComboBox.ItemTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelected,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Content="{Binding Text,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ></CheckBox>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox> 展开
vm层的数据可以在页面正确显示,是单向的。
xaml代码:
<ComboBox Height="23" HorizontalAlignment="Left" Grid.Column="0" Grid.Row="0" Margin="15,4,6,4" x:Name="KeyComboBox" VerticalAlignment="Top" Width="120" Text="Choose Key" ItemsSource="{Binding ImportAllProperty,Mode=TwoWay}"
IsEditable="true" IsReadOnly="true"
IsDropDownOpen="True" StaysOpenOnEdit="True">
<ComboBox.ItemTemplate>
<DataTemplate>
<CheckBox IsChecked="{Binding IsSelected,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" Content="{Binding Text,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" ></CheckBox>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox> 展开
2个回答
展开全部
这位童鞋,你ComboBox都设置成 IsReadOnly="true"了,你还想改UI让VM去响应。。。要仔细哟!~
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把你后台绑定的数据结构也贴出来对比一下才知道。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询