我正在開發一個需要控制ListBox
的應用程序。不幸的是,當我在ListBox
中添加太多項目時,會顯示一個垂直滾動條。我能做些什麼來隱藏ListBox
所示的垂直滾動條嗎?我可以看到有一個屬性可以隱藏水平滾動條,但是垂直滾動條沒有屬性。隱藏ListBox控件中的垂直滾動條
回答
問題解決了。我簡單地創建的模板的一個新項目,一個類庫用下面的代碼
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
在我的主要項目中,我我們右鍵單擊了ToolBox
並選擇了Choose Items...
。點擊瀏覽...並選擇我最近創建的類庫(ClassLibrary1.dll)並點擊打開然後點擊確定。因此,我可以使我的自定義ListBox
不再有垂直滾動條。
除了水平滾動條,正常使用時沒有辦法可以關閉垂直滾動條。
只能使用屬性ScrollAlwaysVisible
(也在VB中)將其設置爲始終可見或自動。
當您添加項目,通過計算,這樣的事情你可以代替重新計算ClientSize(未經測試,可能需要填充值添加到它):
Size sz = new Size(ListBox1.ClientSize.Width, _
ListBox1.Items.Count * ListBox1.Font.Height);
ListBox1.ClientSize = sz
當然,您應該添加如果值爲零,並且/或者您想要最小/最大高度,請檢查該值。
謝謝,我已經成功地隱藏了創建類庫的垂直滾動條。我會在一會兒發佈我的解決方案:) –
不錯:-)當你問是否可以用ListBox控件完成時,我會保留我的答案原樣:-) – K3N
沒問題。謝謝你的回答。祝你有美好的一天 :) –
- 1. ASP.NET:如何隱藏ListBox控件垂直滾動條?
- 2. 隱藏TableLayoutPanel中的垂直滾動條
- 3. 在wx.TextCtrl中隱藏垂直滾動條
- 4. 固定頭隱藏垂直滾動條
- 5. 無法隱藏垂直滾動條
- 6. ListBox垂直滾動條不顯示(WPF)
- 7. 在隱藏overflow-x時隱藏垂直滾動條
- 8. 隱藏滾動條時的垂直滾動
- 9. 隱藏的垂直滾動條,在引導中的中間列
- 10. 隱藏所有瀏覽器中的垂直滾動條
- 11. 刪除或隱藏垂直滾動條中的fancybox 2.1.5
- 12. 在Firefox和Chrome中隱藏多行SELECT的垂直滾動條?
- 13. 隱藏Facebook頁面標籤中的垂直滾動條(新)
- 14. ListView垂直滾動時隱藏圖片
- 15. overflow-x:隱藏在IE11中創建垂直滾動條
- 16. 在IE中隱藏第二個垂直滾動條?
- 17. 如何在wxTextCtrl中隱藏垂直滾動條?
- 18. Chrome是自動隱藏垂直滾動條
- 19. 使用CSS溢出自動隱藏垂直滾動條
- 20. 溢出-x上的雙垂直滾動條:隱藏
- 21. 如何隱藏網頁的垂直滾動條?
- 22. 無法隱藏垂直滾動條上的網頁
- 23. 隱藏瀏覽器的垂直滾動條
- 24. 滾動條隱藏在Android設備上,如何顯示垂直滾動條?
- 25. 垂直滾動條
- 26. 垂直滾動條
- 27. 如何在我的ListBox中獲得垂直滾動條?
- 28. 在分組的WPF ListBox中缺少垂直滾動條
- 29. 如何在加載iframe後隱藏父垂直滾動條?
- 30. 如何在不需要時隱藏垂直滾動條
如果您刪除垂直滾動條,那麼用戶將如何訪問滾動邊緣以外的項目? –
@LayTaylor感謝您的回覆。我忘了提及我有一個RichTextBox。我已經設法控制RichTextBox中的列表框。所以,不需要在列表框中顯示滾動條。有一個美好的一天:) –
好吧,我不知道有任何方法來刪除滾動條。我知道的唯一方法是確保列表框足夠長以容納所有物品。 –