WPF GridView中的CellTemplate失效的原因

2016-08-20 10:36:56来源:http://muzizongheng.blog.51cto.com/856912/1333071作者:muzizongheng人点击


<?xml version="1.0" encoding="UTF-8"?> 最近做一个ListView的Style时,发现一个问题, 就是我的GridView的GridViewColumn的CellTemplate无论是用StaticResource还是DynamicResource,都是没有效果。
原因:GridViewColumn用了DisplayMemberBinding 使得CellTemplate失效。
解决办法: 去掉DisplayMemberBinding, 在CellTemplate的模板中指定Path路径。 比如:
<DataTemplate x:Key="GridViewHeaderTemplate1"><StackPanel><TextBlock Text="{Binding Mode=OneWay}"/><TextBox TextWrapping="Wrap" Text="" MinWidth="25"/></StackPanel></DataTemplate><DataTemplate x:Key="StatusDataTemplate"><CheckBox IsChecked="{Binding Status}"></CheckBox></DataTemplate>
<GridViewColumn HeaderTemplate="{StaticResource GridViewHeaderTemplate1}" CellTemplate="{StaticResource StatusDataTemplate}" Header="Status" />
如果你不想用CellTemplate指定Binding的path, 可以通过<GridViewColumnHeaderTemplate="{StaticResourceGridViewHeaderTemplate1}"DisplayMemberBinding="{BindingStatus}"Header="Status" />

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台