タイトルのように:動的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>
今、私が達成しようとしているのは、特定の列のサイズを変更できるようにすることです。これにより、他の列の幅を均一にしたまま、静的な幅を与えることができます。
誰かが私を指す方向がありますか?ユニフォームグリッドのレンダリングの特定のカスタム実装を避けたいと思っていましたが、これを行うためのスマートで簡単な方法はありますか?
オレに関してよろしくお願いします