0

如何在占据窗口左角并随窗口高度调整的窗口上呈现可滚动的 wpf 树视图控件。我一直在尝试使用 Grid 和停靠面板,但除非您指定高度,否则滚动条不会出现。请用 XAML 标记回答。

4

1 回答 1

2

告诉我这是否是您需要的:

<Window x:Class="WpfApplication6.MainWindow"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="MainWindow" Name="window" Height="350" Width="525">
<Grid>
    <TreeView 
        ItemsSource="{Binding ElementName=window, Path=TreeviewDummySource}" 
        Background="Gray" 
        Width="150" 
        HorizontalAlignment="Left"
        ScrollViewer.VerticalScrollBarVisibility="Visible"/>
</Grid>
</Window>

虚拟物品来源:

    public int[] TreeviewDummySource
    {
        get { return treeviewDummySource; }
    }

    private int[] treeviewDummySource = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17 };

所以诀窍是只有当 ScrollViewer 的内容大于可用大小时,才会出现 ScrollBar。通过指定ScrollViewer.VerticalScrollBarVisibility="Visible"TreeView 属性,滚动查看器将始终存在(启用或禁用)。尝试更改窗口的高度以查看 ScrollBar 是如何启用的。

于 2012-11-09T08:28:38.530 回答