问题描述
我正在开发一个需要 ListBox
控件的应用程序.不幸的是,当我在 ListBox
中添加太多项目时,会显示一个垂直滚动条.我可以做些什么来隐藏 ListBox
显示的垂直滚动条吗?我可以看到有一个隐藏水平滚动条的属性,但没有垂直滚动条的属性.
I'm developing an application that requires a ListBox
control. Unfortunately, when I add too many items in the ListBox
, a vertical scroll bar is shown. Is there something I can do to hide the vertical scroll bar shown by the ListBox
? I can see that there's a property to hide the horizontal scroll bar but there's no property for the vertical scroll bar.
推荐答案
问题解决了.我只是使用以下代码创建了一个模板类库的新项目
The problem was solved. I've simply created a new project of template a class library with the following code
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ClassLibrary1
{
public class MyListBox : System.Windows.Forms.ListBox
{
private bool mShowScroll;
protected override System.Windows.Forms.CreateParams CreateParams
{
get
{
CreateParams cp = base.CreateParams;
if (!mShowScroll)
cp.Style = cp.Style & ~0x200000;
return cp;
}
}
public bool ShowScrollbar
{
get { return mShowScroll; }
set
{
if (value != mShowScroll)
{
mShowScroll = value;
if (IsHandleCreated)
RecreateHandle();
}
}
}
}
}
然后,我构建了输出新类库的项目ClassLibrary1.dll
Then, I've built the project outputting a new class library ClassLibrary1.dll
在我的主项目中,我右键单击了 ToolBox
并选择了 Choose Items...
.点击 Browse... 并选择我最近创建的类库 (ClassLibrary1.dll) 并点击 Open 然后点击 OK.因此,我能够拥有不再有垂直滚动条的自定义 ListBox
.
On my main project, I've right-clicked the ToolBox
and selected Choose Items...
. Clicked on Browse... and selected the class library that I've recently created (ClassLibrary1.dll) and clicked on Open then on OK. Thus, I was able to have my custom ListBox
which has no vertical scroll bars anymore.
这篇关于隐藏 ListBox 控件中的垂直滚动条的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!