アプリケーションに新しいウィンドウを追加しています。このアプリケーションには、ビュー モデル オブジェクトの にプロパティがバインドされている がListBox含まれています。ビュー モデル オブジェクトのレンダリングに使用されるデータ テンプレートは次のとおりです。ItemsSourceObservableCollection
<DataTemplate x:Key="DomainTemplate" DataType="DomainViewModel">
<Border BorderBrush="{Binding Converter={StaticResource BrushConverter}, Path=IsSelected}"
BorderThickness="2"
Margin="5"
Name="SelectedBorder">
<Button Click="SelectDomain_Click"
Content="{Binding Path=Name}"
FontSize="16"
FontWeight="Bold"
Height="60"
IsEnabled="{Binding Path=CurrentSiteIsValid, RelativeSource={RelativeSource AncestorType={x:Type c:DomainPicker}}}"
Margin="5" />
</Border>
</DataTemplate>
HorizontalContentAlignment="Stretch"の設定を使用して、ListBoxすべてをButtonsの幅に合わせていListBoxます。また、ビュー モデル オブジェクトはデータベースから読み取られ、Name プロパティには最大 80 文字の任意の文字列を含めることができます。
問題は、ウィンドウ上に直接ある場合のキャプションが最も長い場合Buttonsの幅と同じ幅にしたいということです。Button次に、ListBoxはそれ自体を含むようにサイズを変更しButton、最後にウィンドウは に合わせてサイズ変更する必要がありますListBox。
どうすればこれを機能させることができますか?