Tôi đang tham khảo dự án winforms lớn có khả năng chạy ở chế độ "Chạm" để có thể vận hành bằng giao diện màn hình cảm ứng. Kiến trúc ứng dụng đã chứa logic mở rộng để mở rộng phông chữ/hiển thị trên các biểu mẫu và điều khiển chuẩn .Net và các điều khiển tùy chỉnh cũng xử lý việc mở rộng quy mô.Các hộp thoại Windows có phông chữ lớn
Vấn đề là ứng dụng sử dụng OpenFileDialog và SaveFileDialog không sử dụng cùng một logic (về cơ bản là điều chỉnh kích thước của thuộc tính Phông trên điều khiển và biểu mẫu đệ quy). Tôi tin rằng các hộp thoại này về cơ bản là các hộp thoại Windows bản địa và lớp OpenFileDialog thực sự chỉ là các lớp bao bọc để hiển thị một giao diện .Net chuẩn để tương tác với chúng.
Một giải pháp có thể là triển khai các hộp thoại tùy chỉnh cho những điều này, nhưng điều đó có thể sẽ có phần công việc rộng rãi. Những gì chúng tôi thực sự muốn làm là bằng cách nào đó quy mô kích thước phông chữ của hộp thoại đặc biệt này (có lẽ thông qua một số P/Invoke cửa sổ xử lý ma thuật)?
Tôi biết rằng một giải pháp để kích hoạt cảm ứng sẽ là điều chỉnh kích thước phông chữ của Windows nói chung, nhưng ý tưởng đó không thực sự bắt kịp với công ty này, họ sẽ thay đổi quy mô ứng dụng và để phần còn lại của Hệ điều hành bị ảnh hưởng.
Vì vậy, bất kỳ trải nghiệm hoặc ý tưởng nào về cách bạn có thể mở rộng các hộp thoại này thành phông chữ lớn hơn? Hay chúng ta nên cắn viên đạn và tạo hộp thoại tùy chỉnh cho điều này?
[Bài viết này] (http://www.codeproject.com/KB/dialog/OpenFileDialogEx.aspx) có thể giúp bạn. – ahazzah
Bài viết rất hay nhưng tôi không đi theo cách này. Tôi muốn viết lại code hơn là hack lớp kín từ .NET. Phiên bản tiếp theo của khuôn khổ hoặc thay đổi API có thể dễ dàng phá vỡ mã của bạn. Sử dụng các điều khiển của bên thứ ba có thể giúp bạn rất nhiều ở đây (những người dùng trả phí hoặc miễn phí). Tôi sẽ đi đầu tiên tìm kiếm một điều khiển cây, đó là khó khăn hơn để tùy chỉnh và tất cả. –
[This] (http://www.codeproject.com/KB/dialog/CustomizeFileDialog.aspx) bài viết khác có thể giúp bạn quá =) –