将IsEnabled属性绑定到items.count

时间:2012-04-20 15:33:31

标签: c# .net wpf xaml isenabled

我有以下树视图模板:

<TreeView x:Name="counterTree" ItemsSource="{Binding CounterCheckBoxList}" x:FieldModifier="private">
    <TreeView.ItemTemplate>
        <HierarchicalDataTemplate ItemsSource="{Binding Children}">
            <StackPanel Orientation="Horizontal" Name="counterTreePanel">
                <CheckBox Background="LightBlue" 
                         IsChecked="{Binding IsChecked}" Checked="CounterTreeCheckBoxChecked" Unchecked="CounterTreeCheckBoxUnchecked"
                                                  VerticalAlignment="Center" Tag="{Binding Id}" />

                <Label Content="{Binding Name }" 
                       Tag="{Binding ParentId}"
                       Name="counterLabel" 
                       Padding="1,1,1,1" />
            </StackPanel>
        </HierarchicalDataTemplate>
    </TreeView.ItemTemplate>

    <TreeView.ItemContainerStyle>
        <Style TargetType="TreeViewItem">
            <Setter Property="IsExpanded" Value="False" />
            <Setter Property="KeyboardNavigation.AcceptsReturn" Value="True" />
        </Style>
   </TreeView.ItemContainerStyle>
</TreeView>

ItemsSource的{​​{1}}为TreeView

CounterCheckBox类有一个属性:public List Children。

我的要求是,如果此列表为空,则“CheckBox”不应该是可见的,并且存在“Checkbox”应该可见的Child。如何将列表的计数绑定到Checkbox的Visiblity属性。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您必须使用IValueConverter