【问题标题】:wpf ItemsControl binding problemwpf ItemsControl绑定问题
【发布时间】:2011-03-10 16:52:41
【问题描述】:

我在代码隐藏中绑定到 ItemsControl:

ColumnVisibilityItems.DataContext = gc.ColumnVisibility;

其中ColumnVisibility是一个ObservableCollection,也用字典试过了..

我的标记

                <ItemsControl x:Name="ColumnVisibilityItems">
                    <Label Content="{Binding Path=Name}" />
                </ItemsControl>

在单步执行时,我看到集合绑定有 11 个项目。但 ItemsControl 仅呈现集合中的第一项。

是否需要设置 ItemsSource 属性才能使其正常工作?因为每当我尝试在后面的代码中设置它时,我都会收到异常说项目无法修改,因为它们已经存在。

【问题讨论】:

    标签: wpf binding


    【解决方案1】:

    基本上你需要指定你的模板。有关更完整的示例,请参阅 the msdn docs

    <ItemsControl x:Name="ColumnVisibilityItems" ItemsSource="{Binding}>
        <ItemsControl.ItemTemplate>
            <DataTemplate>
                <Label Content="{Binding Path=Name}" />
            </DataTemplate>
        </ItemsControl.ItemTemplate>
    </ItemsControl>
    

    【讨论】:

    • 我是这么认为的,并且实际上尝试过使用 ItemTemplate,但似乎并没有太大的不同。例如这段代码,产生一个空项目...我在代码隐藏中设置绑定不正确吗?
    • 我已经更新了我的示例,以展示您将如何设置 ItemsSource,这可能就是您所需要的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    • 2016-06-04
    • 1970-01-01
    相关资源
    最近更新 更多