0
で親幅を超えるのは、私は次のXAMLを持っているとしましょう:レイアウトのリストボックスは、WPF
<Grid MaxHeight="200" d:LayoutOverrides="Width">
<Grid.ColumnDefinitions>
<ColumnDefinition />
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<ListBox Height="170" ScrollViewer.HorizontalScrollBarVisibility="Visible" ItemsSource="{Binding DataModel.LocalData.ListFabricRules}" IsEnabled="{Binding DataModel.LocalData.Enabled}" SelectedItem="{Binding DataModel.LocalData.ListFabricRulesSelected}" >
<ListBox.ItemTemplate>
<DataTemplate>
<Grid>
<TextBlock Text="{Binding Descript}" />
</Grid>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
<StackPanel Grid.Column="1" Orientation="Vertical" d:LayoutOverrides="Height" Margin="10,0" IsEnabled="{Binding DataModel.LocalData.EnabledRules}">
<Button Content="Test" />
</StackPanel>
</Grid>
目標は、リストボックスが(列)、および右側にある空きスペースを埋めることですリストボックスにはボタンがあります。 問題は次のとおりです。リストボックスに(スクロールしたテキストが大きいために)横スクロールが表示されると、幅の増分がグリッドの比率を変更するため、ボタンが余白を尊重せずにメイングリッドを超えて右に移動します。 Scrollviewerの内部にメイングリッドを配置すると、スクロールが部分的に非表示になります。メイングリッドのホストはusercontrolです。ここで
親愛なるロビン、私は解決策を証明しますが、動作しません。水平スクロールが表示されているときにリストボックスの幅が増えます。リストボックスには、ボタンが残る幅の余りがあることが必要です。添付画像では、スクロールビューアを使うことができますが、スクロールビューアを使用せずに解決策を試しましたが、動作は同じです。 – Aitor