私は、ビューモデル内のコレクションにバインドされたItemsControlを持つListBoxを持っています。私は、DataTemplate内のグリッドカラムでスターサイジングを使用し、そのカラム内の要素(進捗バー)を伸ばして設定しようとしています。これは、通常、グリッド内のすべての利用可能な水平スペースを占有しますが、ItemsControlにネストされていますが、これはそうではないようです。私は&を少し読んだことがありますが、これらのコントロールを一緒に使用することで既知の問題があるようです。これには解決策がありますか?ItemsControlのスターサイジンググリッド列?
<ListBox>
<ItemsControl ItemsSource="{Binding WebMappingSourcesCollection}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid
ShowGridLines="True"
Grid.IsSharedSizeScope="true"
>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<CheckBox
Grid.Column="0"
HorizontalAlignment="Center" />
<TextBlock
Grid.Column="1"
Text="{Binding Name}"/>
<ProgressBar Grid.Column="2"
Minimum="0"
Maximum="100"
Value="30"
HorizontalContentAlignment="Stretch"
HorizontalAlignment="Stretch"
MaxHeight="15"
/>
<!-- etc. etc. -->
ListBoxで 'HorizontalContentAlignment =" Stretch "を試しましたか? –
残念ながら幸運はありません。 ListBoxの外側でうまく動作します – Hardgraf
ItemContainerStyleのスタイル設定ツールを介して、親ListBoxとListBoxItemの両方で使用された場合と同じ結果になりますか? –