C#WinForms TreeView删除水平滚动条

我需要一个只有垂直滚动条的TreeView。

我尝试了这个,但它不起作用,生成的滚动条根本不做任何事情。

我尝试了相反的方法(可滚动到true并禁用具有user32.dllfunction的水平滚动条) – 它不起作用,当我向TreeView添加足够长的东西时滚动条再次显示…

您可以尝试在treeview控件上打开TVS_NOHSCROLL窗口样式。 为此,您必须使用自定义TreeView扩展标准TreeView控件,如下所示:

public class NoHScrollTree : TreeView { protected override CreateParams CreateParams { get { CreateParams cp = base.CreateParams; cp.Style |= 0x8000; // TVS_NOHSCROLL return cp; } } } 

如果您的目的是获得Windows Vista和7本机树视图的外观,那么您应该遵循这个,

如何让Windows本机查找.NET TreeView?

SetWindowTheme是必要的。 然后不会出现水平滚动条。

它适用于Windows Vista和Windows 7。