我有一個列表框,我想要佔用我的窗口的寬度,列表框項目將拉伸到列表框的大小。拉伸到列表框寬度的列表框項目,但沒有超過寬度
每個列表框項目都將是一個數據模板,其寬度爲150左右,其餘大小爲描述的文本框。我希望描述texbox延伸到剩餘的可用大小。因此,這裏是我認爲會創建這個佈局例子XAML:
<Window x:Class="test.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="MainWindow" Height="350" Width="525">
<Grid>
<ListBox Margin="20,20,20,20" ItemsSource="{Binding Path=List}">
<ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem">
<Setter Property="HorizontalContentAlignment"
Value="Stretch" />
</Style>
</ListBox.ItemContainerStyle>
<ListBox.ItemTemplate>
<DataTemplate>
<Border BorderBrush="AliceBlue"
BorderThickness="1">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="150" />
<ColumnDefinition Width="*" />
</Grid.ColumnDefinitions>
<Label Width="20"
Content="Test" />
<ComboBox Width="130" />
<TextBox Grid.Column="1"
HorizontalAlignment="Stretch"
HorizontalContentAlignment="Stretch" />
</Grid>
</Border>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
然而,當我在文本框中輸入內容,文字的寬度變過去列表框的寬度,列表框項目不斷增加並顯示水平滾動條。
我想實現的是文本框的最大寬度,直到列表框的最大寬度不會變大。任何人都知道我可以如何實現這種佈局?
工作完美,非常感謝! – cab