<ListView Grid.Row="1" Margin="10" Name="lvRegistersConfig" ItemsSource="{Binding registers}">
<ListView.Resources>
<local:BoolToVisibility x:Key="BTVConverter"/>
</ListView.Resources>
<ListView.View>
<GridView>
<local:GridViewColumnExt Header="Register Name" Width="100" Visibility="{Binding Vis, Converter={StaticResource BTVConverter}}" >
<local:GridViewColumnExt.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Name}" Visibility="{Binding Vis, Converter={StaticResource BTVConverter}}"/>
</DataTemplate>
</local:GridViewColumnExt.CellTemplate>
</local:GridViewColumnExt>
</GridView>
</ListView.View>
</ListView>
GridViewColumnExt是从GridViewColumn继承并添加可见性属性的类。
您可能会看到,我的ListView的ItemsSource被设置为寄存器ObservableCollection。Register类有一个名为vis的bool类型的属性。对于TextBox来说,这一切都很好,但是从GridViewColumnExt don来看,我认为我无法到达集合并绑定到特定的对象。
我不确定GridViewColumn的DataContext是什么,我发现我无法设置它。我需要一个提示,我的GridViewColumn如何从registers ObservableCollection中的Register对象中看到Vis属性?
我不确定GridViewColumnext
控件是如何工作的,但在XAML中,DataContext
似乎不是Registers
集合中的单个项,而是声明Registers
集合的DataContext
集合。因此,您可能无法使用register.vis
属性控制列的可见性。
如果希望在单元格模板中添加更多内容,可以将textblock
包装在grid
中,并将grid.visibility
属性绑定到register.vis
属性。
这有道理吗?
我试图将子类属性绑定到GridViewColumn。我有一个母类M1和三个不同的子类S1、S2和S3。GridViewColumn由类M1的对象填充。我希望将S2的一个属性绑定到这个GridViewColumn的头,而M1中没有实现这个属性。 有人能给我解释一下怎么做吗?
最好的办法是什么?根据显示的数据,我希望绑定到MyText1或MyText2。我怎么做“开关”?
我想解决的一般问题是,一个复选框只有一个datatemplate,然后我可以将它用于listview中的许多不同列(使用gridview)。在我所见过的所有示例中,每个绑定都创建了一个分离模板,这对我来说似乎有些过头了。 我一直试图通过创建gridviewcolumn将设置的附加属性来实现这一点。然后,我可以简单地为绑定到附加属性的复选框设置一个datatemplate。 我遇到的问题实际上是将复
如何通过绑定隐藏 WPF 中的列? 这就是我所做的: 这是我得到的(除了仍然可见的列): System. Windows. Data错误:2:找不到目标元素的管理Frameworks Element或Frameworks ContentElement。绑定表达式:路径=My列可见性;数据项=空;目标元素是“DataG的文本列”(HashCode=1460142);目标属性是“可见性”(类型“可见性
问题内容: 我在div中有一个HTML 5视频。然后,我有一个自定义播放按钮-效果很好。 我已将视频的可见性设置为在加载时隐藏,并且在单击播放按钮时可见,那么如何在再次单击播放按钮时将其恢复为隐藏状态? 我基本上只是想在可见和隐藏的两种状态之间切换,除非我不能使用切换,因为那是show的隐藏div。我需要在那里,只是隐藏起来,所以它保持正确的高度。 问题答案: 使用jQuery:
在我的XAML中: 我的gridviewcolumn的可见性现在应该取决于我的集合项的“isVisible”的值。那件事可能吗?