使用WPF绑定TextBlock中ItemsControl的ItemsSource的计数

时间:2016-09-14 05:05:58

标签: c# wpf xaml data-binding itemssource

我想使用WPF绑定TextBlock中ItemsControl的Count of ItemsSource。

查看我尝试过的代码

<Menu>
    <MenuItem>
        <MenuItem.Header>
            <TextBlock Text="{Binding Path=(ItemsControl.ItemsSource.Item, RelativeSource={RelativeSource TemplatedParent}}" />
        </MenuItem.Header>

        <ItemsControl ItemsSource="{Binding PersonCollection}">
            <ItemsControl.ItemTemplate>
                <DataTemplate >
                    <StackPanel Orientation="Horizontal" Margin="2" MinWidth="100">
                        <TextBlock Text="{Binding Value.Text}"/>
                    </StackPanel>
                </DataTemplate>
            </ItemsControl.ItemTemplate>
        </ItemsControl>
    </MenuItem>
</Menu>
  

注意:我需要根据 ItemsControl ItemsSource 而不是Collection.Count属性来计算。请帮助我。

1 个答案:

答案 0 :(得分:2)

这是解决方案:

 <Menu>
        <MenuItem>
            <MenuItem.Header>
                <TextBox Text="{Binding ElementName=ItemsControl, Path=Items.Count,  Mode=OneWay}" />
            </MenuItem.Header>

            <ItemsControl x:Name="ItemsControl"
                          ItemsSource="{Binding Items}">
                <ItemsControl.ItemTemplate>
                    <DataTemplate>
                        <StackPanel Orientation="Horizontal"
                                    Margin="2"
                                    MinWidth="100">
                            <TextBlock Text="{Binding Value.Text}" />
                        </StackPanel>
                    </DataTemplate>
                </ItemsControl.ItemTemplate>
            </ItemsControl>
        </MenuItem>
    </Menu>

它对你有用吗?