开发者

How to bind to ColumnCollection for a GridView using XAML

I have a collection of objects which I would like to represent columns in a GridView. Currently I am binding individual columns in my GridView to items in the collection like this:

<ListView>
    <ListView.View>
        <GridView>
            <GridViewColumn Header="{Binding Path=MyColumns[0].Title}"></GridViewColumn>
            <GridViewColumn Header="{Binding Path=MyColumns[1].Title}"></GridViewColumn>
            <GridViewColumn Header="{Binding Path=MyColumns[2].Title}"></GridViewColumn>
        </GridView>
    </ListView.View>
</ListView>

This works well, but what I really want to do is to bind to the collection itself (since the number of items in the collection might change at run-time). I would like to accomplish this in XAML. What I have in mind is something like this (note this does not work - the ColumnsSource attr开发者_StackOverflowibute is make-believe):

<ListView>
    <ListView.View>
        <GridView ColumnsSource="{Binding Path=MyColumns}">
        </GridView>
    </ListView.View>
</ListView>

Can this be done? If so, how?


You can use an attached property to create a ColumnsSource property, see this question for an example.

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜