Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 树视图大小(以wpf为单位)_C#_Wpf_Treeview_Scrollbar - Fatal编程技术网

C# 树视图大小(以wpf为单位)

C# 树视图大小(以wpf为单位),c#,wpf,treeview,scrollbar,C#,Wpf,Treeview,Scrollbar,请让我知道,当屏幕分辨率更改时,如何重新调整树视图控件的高度 请参阅此代码: <TreeView Name="treeView1" Height="150" VerticalAlignment="Top"> <TreeViewItem Header="Root" IsExpanded="True"> <TreeViewItem Header="Item 1"></TreeViewItem> <Tree

请让我知道,当屏幕分辨率更改时,如何重新调整树视图控件的高度

请参阅此代码:

<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>

在某些屏幕分辨率中,我可以看到所有节点,在某些分辨率中,我可以看到滚动条。
我想查看没有滚动条的所有节点。

您可以使用事件:


在更改分辨率时,您将无法做到这一点-在较低的分辨率下,像素大小在物理上更大,因此在同一物理视口上的点更少-这就是为什么会出现滚动条。
public partial class Window1 : Window
{
    public static EventHandler HandleDisplaySettingsChanged = 
        new EventHandler(SystemEvents_DisplaySettingsChanged);

    public Window1()
    {
        InitializeComponent();
        Microsoft.Win32.SystemEvents.DisplaySettingsChanged += HandleDisplaySettingsChanged;
    }

    public void Close()
    {
        SystemEvents.DisplaySettingsChanged -= HandleDisplaySettingsChanged;
    }

    public static void SystemEvents_DisplaySettingsChanged(object sender, EventArgs e)
    {
        Console.WriteLine("display settings changed");

        // change treeview size as you think what is appropriate here...
    }
}