Включите прокрутку для WPF Treeview

Да.

, Если компьютер не выполняет его, он повреждается. Если люди не могут считать его, это будет повреждено. Скоро.

25
задан Ronald 21 August 2009 в 09:34
поделиться

3 ответа

У вас явно установлена ​​высота вашего окна? Если вы хотите увидеть полосу прокрутки, что-то должно определять высоту TreeView или его контейнера, иначе он не будет знать, когда ему нужно показать полосу прокрутки.

Пример:

<Window x:Class="StackOverflowTests.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Title="Window1" x:Name="window1" Height="300" Width="300">
    <Grid>
        <TreeView  Name="treeView1" Height="150" VerticalAlignment="Top">
            <TreeViewItem Header="Root" IsExpanded="True">
                <TreeViewItem Header="Item 1"></TreeViewItem>
                <TreeViewItem Header="Item 2"></TreeViewItem>
                <TreeViewItem Header="Item 3"></TreeViewItem>
                <TreeViewItem Header="Item 4"></TreeViewItem>
                <TreeViewItem Header="Item 5"></TreeViewItem>
                <TreeViewItem Header="Item 6"></TreeViewItem>
                <TreeViewItem Header="Item 7"></TreeViewItem>
                <TreeViewItem Header="Item 8"></TreeViewItem>
                <TreeViewItem Header="Item 9"></TreeViewItem>
                <TreeViewItem Header="Item 10"></TreeViewItem>
                <TreeViewItem Header="Item 11"></TreeViewItem>
                <TreeViewItem Header="Item 12"></TreeViewItem>
                <TreeViewItem Header="Item 13"></TreeViewItem>
                <TreeViewItem Header="Item 14"></TreeViewItem>
                <TreeViewItem Header="Item 15"></TreeViewItem>
                <TreeViewItem Header="Item 16"></TreeViewItem>
                <TreeViewItem Header="Item 17"></TreeViewItem>
                <TreeViewItem Header="Item 18"></TreeViewItem>
                <TreeViewItem Header="Item 19"></TreeViewItem>
                <TreeViewItem Header="Item 20"></TreeViewItem>
                <TreeViewItem Header="Item 21"></TreeViewItem>
                <TreeViewItem Header="Item 22"></TreeViewItem>
                <TreeViewItem Header="Item 23"></TreeViewItem>
                <TreeViewItem Header="Item 24"></TreeViewItem>
                <TreeViewItem Header="Item 24"></TreeViewItem>
            </TreeViewItem>
        </TreeView>
    </Grid>
</Window>
3
ответ дан 28 November 2019 в 20:53
поделиться

TreeView Сам элемент управления включает в свой шаблон ScrollViewer . Вы должны иметь возможность просто использовать TreeView внутри соответствующего хоста (а не StackPanel !).

38
ответ дан 28 November 2019 в 20:53
поделиться

TreeView содержит ScrollViewer, но, как сказал @Carlo, TreeView или его контейнер должен иметь высоту. В качестве альтернативы, TreeView должен быть размещен в контейнере, который не дает бесконечной высоты своим дочерним элементам (т.е. StackPanel, который, я думаю, имел в виду @Kent). Поэтому поместите его внутрь Grid, не нужно задавать явную высоту Grid или TreeView, и вы получите полосы прокрутки.

7
ответ дан 28 November 2019 в 20:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: