我有一個ListView顯示兩個滾動條。爲了實現這一目標,我會將位於網格狀之下的邊境之內我的ListView:WPF XAML ListView與滾動條
<Window ...
MinWidth="600" MinHeight="500" Width="800" Height="500"
Topmost="True"
WindowStartupLocation="CenterScreen"
SizeToContent="Height" WindowStyle="None">
<Window.Resources>
<ResourceDictionary>
...
</ResourceDictionary>
</Window.Resources>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*" MinHeight="60"/>
<RowDefinition Height="48"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="10"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid Grid.Row="1">
<Grid.RowDefinitions>
<RowDefinition Height="32"/>
<RowDefinition Height="370"/> <-- THIS IS HARDCODED TO 370 BUT I NEED IT TO BE RESIZABLE
</Grid.RowDefinitions>
<Grid Margin="5,0,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="4"/>
<ColumnDefinition Width="346*"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding MyName}" Grid.Column="1"
Style="{StaticResource MyNameStyle}" Margin="0,5,0,5" />
</Grid>
<Border BorderBrush="{StaticResource MyBrush}" Grid.Row="1" Grid.Column="0" >
<ListView
x:Name="lstMyListView"
Margin="0,0,0,0"
BorderBrush="Transparent"
ItemsSource="{Binding MyItems}"
SelectedIndex="0"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto">
...
...
</ListView>
...
...
</Border>
...
...
</Grid>
</Grid>
</Window>
這是所有的形式,是調整大小。因此,ListView也應該調整大小,但只有在用戶調整表單大小時才應該這樣做。上面我的硬編碼值的問題很明顯,ListView不會調整大小,但會保持恆定的高度= 370。
我知道我可以將它設置爲370 *,但在這種情況下,我的List將調整大小以適合所有項目。我想限制這一點,以便只有在用戶調整窗體大小時纔會調整大小。因此,如果有更多的項目和用戶調整窗體大小時,ListView應該顯示滾動條,如果窗體的大小調整爲可以容納ListView中所有項目的高度,那麼滾動條應該消失。
UPDATE: 而不是硬編碼的高度超過370,我已經試過了高度設置爲,汽車,以及370。所有這些都會擴展ListView(因此也是表單)以適應ListView中的所有項目。
UPDATE 2: 更新了XAML以顯示整個樹結構。
更新3: 按雷切爾的建議,設置硬編碼370「*」的註釋行上面的XAML和調整,讓適合的ListView中的所有項目產生的形式。我添加了屏幕截圖,顯示打開時的窗體以及顯示打開時窗體的截圖。正如你所看到的,它調整高度以適應所有的itesm。
我需要的是窗體和ListView保持它們的集合大小,並只在用戶調整窗體大小時才調整大小。
把370改成'*',也許只是把370用作MinHeight。 –
@ChrisW。這不起作用。我嘗試過使用370 *,*和Auto。所有這些都會將表單和ListView擴展爲容納ListView中所有項目的大小。非常感謝克里斯 – pixel
我可能不正確理解你的整體意圖。 370 *無效,*只需讓它消耗所提供的空間,Auto即可滿足需要。 –