Tôi đang phát triển một ứng dụng yêu cầu điều khiển ListBox
. Thật không may, khi tôi thêm quá nhiều mục trong ListBox
, thanh cuộn dọc được hiển thị. Có điều gì tôi có thể làm để ẩn thanh cuộn dọc được hiển thị bởi ListBox
không? Tôi có thể thấy rằng có một thuộc tính để ẩn thanh cuộn ngang nhưng không có thuộc tính nào cho thanh cuộn dọc.Ẩn thanh cuộn dọc trong điều khiển ListBox
Trả lời
Sự cố đã được giải quyết. Tôi đã chỉ đơn giản là tạo ra một dự án mới của mẫu một thư viện lớp học với đoạn mã sau
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();
}
}
}
}
}
Sau đó, tôi đã xây dựng các dự án xuất ra một lớp thư viện mới ClassLibrary1.dll
Mở dự án chính của tôi, tôi đã nhấp chuột phải vào ToolBox
và chọn Choose Items...
. Nhấp vào Duyệt qua ... và chọn thư viện lớp mà tôi vừa tạo (ClassLibrary1.dll) và nhấp vào Mở sau đó trên OK. Vì vậy, tôi đã có thể có tùy chỉnh ListBox
của mình mà không có thanh cuộn dọc nữa.
Trừ thanh cuộn ngang, không có cách nào để sử dụng bình thường, bạn có thể tắt thanh cuộn dọc.
Bạn chỉ có thể đặt thiết bị luôn hiển thị hoặc tự động sử dụng thuộc tính ScrollAlwaysVisible
(cũng bằng VB).
Khi bạn thêm mục mà bạn có thể thay vào đó lại tính toán ClientSize bằng cách tính toán, một cái gì đó như thế này (chưa được kiểm tra, bạn có thể cần phải thêm giá trị Padding để nó là tốt):
Size sz = new Size(ListBox1.ClientSize.Width, _
ListBox1.Items.Count * ListBox1.Font.Height);
ListBox1.ClientSize = sz
Tất nhiên, bạn nên thêm kiểm tra giá trị trong trường hợp nó bằng 0 và/hoặc bạn muốn có chiều cao tối thiểu/tối đa.
Cảm ơn bạn, tôi đã ẩn thành công thanh cuộn dọc tạo thư viện lớp. Tôi sẽ gửi giải pháp của tôi trong một thời điểm :) –
Nice :-) Khi bạn hỏi nếu nó có thể được thực hiện với các ListBox kiểm soát tôi sẽ để lại câu trả lời của tôi như là :-) – K3N
Không có vấn đề gì. Cảm ơn vì đã trả lời. Có một ngày tuyệt vời :) –
- 1. Cách ẩn thanh cuộn dọc trong Điều khiển .NET ListView trong Chế độ chi tiết
- 2. Ngăn hiển thị thanh cuộn dọc ListBox Silverlight
- 3. Ẩn thanh cuộn dọc trong textbox multiline trong IE
- 4. Ẩn thanh cuộn trong điều khiển webBộ điều khiển trình duyệt
- 5. Ẩn thanh cuộn trong WebView
- 6. jqGrid thanh cuộn dọc
- 7. Tắt thanh cuộn ngang trong bảng điều khiển EXTJS
- 8. IPHONE: ABPeoplePickerNavigation Thanh điều hướng ẩn của thanh điều khiển
- 9. Ẩn thanh cuộn Trong DataGridView
- 10. ItemsControl thiếu thanh cuộn dọc
- 11. Ẩn thanh công cụ Adobe, thanh menu, thanh cuộn, v.v.
- 12. Dọc Scrollbar dẫn đến thanh cuộn ngang
- 13. Ẩn thanh điều khiển điều hướng phía dưới
- 14. Xóa thanh cuộn dọc, giữ thanh cuộn ngang trong khung nội tuyến trong Chrome
- 15. ẩn thanh cuộn scrollview android
- 16. Thanh cuộn dọc với cửa sổ.open
- 17. Đặt thanh cuộn dọc hiển thị
- 18. Hiển thị thanh cuộn dọc Div
- 19. Ẩn thanh cuộn dọc của SELECT nhiều dòng trong Firefox và Chrome?
- 20. DIV Thanh cuộn dọc trên bên trái
- 21. Ẩn thanh cuộn của HorizontalScrollView
- 22. iFrame 100% chiều cao khiến thanh cuộn dọc
- 23. Cách chỉ có một thanh cuộn dọc trên div
- 24. JList - sử dụng thanh cuộn dọc thay vì nằm ngang với hướng cuộn dọc?
- 25. Bảng điều khiển bọc WPF và cuộn
- 26. Tự động ẩn thanh cuộn dọc bằng cách sử dụng tràn css
- 27. Phần tử bảng điều khiển động thêm và thanh cuộn
- 28. CListCtrl Thanh cuộn dọc trong Chế độ xem danh sách
- 29. Ẩn chương trình điều khiển C++ từ thanh tác vụ
- 30. Điều khiển tab dọc C#
Nếu bạn xóa thanh cuộn dọc thì người dùng sẽ truy cập các mục qua mép cuộn như thế nào? –
@LeeTaylor Cảm ơn bạn đã trả lời. Tôi đã quên đề cập đến rằng tôi có một RichTextBox. Tôi đã quản lý để kiểm soát hộp danh sách trong RichTextBox. Vì vậy, không cần hiển thị thanh cuộn trong hộp danh sách. Chúc một ngày tuyệt vời :) –
OK, tôi không biết cách nào để xóa các thanh cuộn. Cách duy nhất tôi biết là đảm bảo hộp danh sách đủ dài để chứa tất cả các mục của bạn. –