C# 用于动态按钮的Windows Phone 8.1流容器
SOF部落 我请求一个流容器的标识,我可以将不确定数量的动态创建的XAML按钮放入其中。所说的按钮应该尽可能紧密地包装文本(我想我有一个模板)。但是按钮应该像gridview一样包装,但是运行起来像stackpanel一样。有人知道一个容器可以让我完成图像所描绘的内容吗 目前,对于下面的现有图像,我使用的是gridview,但gridview设置了特定的宽度,但流动不均匀。stackpanel具有所需的端对端样式,但不会包裹。有什么想法吗C# 用于动态按钮的Windows Phone 8.1流容器,c#,asp.net,xaml,gridview,C#,Asp.net,Xaml,Gridview,SOF部落 我请求一个流容器的标识,我可以将不确定数量的动态创建的XAML按钮放入其中。所说的按钮应该尽可能紧密地包装文本(我想我有一个模板)。但是按钮应该像gridview一样包装,但是运行起来像stackpanel一样。有人知道一个容器可以让我完成图像所描绘的内容吗 目前,对于下面的现有图像,我使用的是gridview,但gridview设置了特定的宽度,但流动不均匀。stackpanel具有所需的端对端样式,但不会包裹。有什么想法吗 格雷格·斯托尔(Greg Stoll)制造了一种被称为“
格雷格·斯托尔(Greg Stoll)制造了一种被称为“通用包装”的产品。所以,这就是我要走的方向。不过,现在我还有最后一点要处理。如何获得绑定的数据以尊重父容器包装内容的能力,而不仅仅是将其堆叠在垂直列中 下面的XAML给了我下面的图像结果,这不是我想要的。静态添加的按钮对于UniversalWrapPanel来说工作得很好。但是,试图让一个绑定和项目资源工作,嗯,这是我目前无法做到的
好的,再搜索一下,我发现:
下面是在ItemsControl中引用UniversalWrapPanel的正确方法:
<ItemsControl x:Name="GridViewRecipients" ItemsSource="{Binding}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<support:UniversalWrapPanel Orientation="Horizontal" Background="DodgerBlue"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button Style="{StaticResource ButtonLozengeStyle}" Content="{Binding FullName}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
对于以下结果:
<ItemsControl x:Name="GridViewRecipients" ItemsSource="{Binding}">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<support:UniversalWrapPanel Orientation="Horizontal" Background="DodgerBlue"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<Button Style="{StaticResource ButtonLozengeStyle}" Content="{Binding FullName}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>