gpt4 book ai didi

XAML Windows 8 Metro 应用程序,绑定(bind)问题

转载 作者:行者123 更新时间:2023-12-01 11:00:33 24 4
gpt4 key购买 nike

我在 Windows 8 Metro 应用程序中使用分组 GridView,我在 ItemsPanelTemplate 中有一个 VariableSizedWrapGrid,并且想要绑定(bind) MaximumRowsOrColumns 属性,但未正确绑定(bind)。

这是我的 XAML

<GridView  ItemsSource="{Binding Source={StaticResource groupeddata}}" >
<GridView.ItemTemplate>
<DataTemplate>
<Grid Width="120" Height="150" >
<!--some controls here binded correctly.-->
</Grid>
</DataTemplate>
</GridView.ItemTemplate>
<GridView.GroupStyle>
<GroupStyle>
<GroupStyle.HeaderTemplate>
<DataTemplate>
<Grid Margin="1,0,0,6">
<StackPanel Orientation="Horizontal">
<TextBlock Text="{Binding maxGridCoulmns}"></TextBlock>
<!--work ok here -->
<TextBlock Foreground="Black" Padding="0,0,0,20" Text="{Binding headerText}" />
</StackPanel>
</Grid>
</DataTemplate>
</GroupStyle.HeaderTemplate>
<GroupStyle.Panel >
<ItemsPanelTemplate>
<VariableSizedWrapGrid Orientation="Horizontal" MaximumRowsOrColumns="{Binding maxGridCoulmns}" Margin="0,0,80,0"/>
<!--not binding here -->
</ItemsPanelTemplate>
</GroupStyle.Panel>
</GroupStyle>
</GridView.GroupStyle>
</GridView>

最佳答案

您必须将 DependencyProperty 转换为 ICollectionViewGroup 才能获得实际的组对象。

在代码中将是 var actualGroup = (group as Windows.UI.Xaml.Data.ICollectionViewGroup).Group; - 在 XAML 中,您所要做的就是添加前缀 Group . 到绑定(bind)路径。

所以在您的 XAML 中,只需像这样编辑绑定(bind):

<ItemsPanelTemplate>
<VariableSizedWrapGrid
Orientation="Horizontal"
MaximumRowsOrColumns="{Binding Group.maxGridCoulmns}"
Margin="0,0,80,0"/>
</ItemsPanelTemplate>

关于XAML Windows 8 Metro 应用程序,绑定(bind)问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11245631/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com