就像标题所说:有没有一种优雅的方法可以使动态 UniformGrid 中的特定列可调整大小?
详情:
我有一个 ItemsControl 并将 ItemsPanelTemplate 设置为 UniformGrid 类型。ItemTemplate 设置为呈现列内容的自定义控件。
这是 xaml 摘录:
<ItemsControl x:Name="PART_Dimensions"
Grid.Column="1" HorizontalAlignment="Stretch">
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<UniformGrid Columns="{Binding
Path=ItemsSource.Count,
RelativeSource={RelativeSource FindAncestor,
AncestorType={x:Type ItemsControl}}}"
IsItemsHost="True"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<ItemsControl.ItemTemplate>
<DataTemplate>
<local:Dimension
PropertyA="{Binding SourceA}"
ItemsSource="{Binding SourceB}" />
</DataTemplate>
</ItemsControl.ItemTemplate>
现在,我想要实现的是使特定列可以调整大小,给它们一个静态宽度,同时仍然允许其他列的宽度统一。
有没有人可以指出我的方向?我希望避免 UniformGrid 渲染的过于具体的自定义实现,是否有一种智能且简单的方法来做到这一点?
在此先感谢 Ole