我正在努力與我的XAML!我有3行,他們並沒有真正改變頁面的高度,除了中間行。中間一行有一個ListBox。將scrollviewr添加到列表框
根據屏幕的大小,我希望第二行的高度隨着項目被添加到列表框中而變大,除非它將第三行推出屏幕。在這種情況下,我想讓列表框顯示一個滾動條。我不知道我怎麼能做到這一點。
我的研究顯示身高我們有自動和* - 自動將基於控件大小,*將填補整個空白。我看不出這些如何適合我需要的東西...
以下是UserControl的代碼。此UserControl在父項TabControl中呈現。
我的努力是
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
<RowDefinition Height="Auto" />
</Grid.RowDefinitions>
<StackPanel Grid.Row="0">
<TextBlock Text="[?] Source directory" />
</StackPanel>
<ListView ScrollViewer.VerticalScrollBarVisibility="Auto" ItemsSource="{Binding Folders}" Grid.Row="1" >
<ListBox.ItemTemplate>
<DataTemplate>
//data template code
</DataTemplate>
</ListBox.ItemTemplate>
</ListView>
<StackPanel Grid.Row="2">
<Button Content="Save" />
</StackPanel>
</Grid>
編輯
如果我設置網格上的一個高度,它的工作原理,但是,設置一個固定的高度是不是因爲它不會擴展爲一個選項任何決議。
http://www.codeproject.com/Articles/30904/WPF-Layouts-A-Visual-Quick-Start – 2014-09-24 17:12:19
所以你想要這兩個StackPanels停靠在頂部和底部,同時允許ListView佔用屏幕的整個中間部分? – estebro 2014-09-24 17:12:40
@estebro這是正確的 – MyDaftQuestions 2014-09-24 17:23:43