Bên trong một biểu mẫu MDI là một khu vực khách hàng lưu trữ các biểu mẫu con mdi. Làm thế nào để tôi tìm ra khu vực rộng lớn như thế nào? Điều tốt nhất tôi có thể tìm ra cho đến nay là tìm tổng kích thước của khu vực khách hàng tiềm năng của cha mẹ (mdiparent.ClientRectangle) và sau đó trừ đi các kích thước của các thành phần như thanh công cụ, vv lấy đi khỏi vùng máy khách. Có cách nào tốt hơn?Kích thước/Vị trí của Winforms MDI Client Area
10
A
Trả lời
19
Không có thuộc tính nào trên biểu mẫu cung cấp cho bạn quyền truy cập vào cửa sổ ứng dụng khách MDI. Nhưng bạn có thể tìm thấy nó như sau:
public MdiClient GetMdiClientWindow() {
foreach (Control ctl in this.Controls) {
if (ctl is MdiClient) return ctl as MdiClient;
}
return null;
}
Từ đó, chỉ cần sử dụng thuộc tính Kích thước của nó.
1
Dưới đây là một biến thể của mã mà trong vb.net:
Public Function GetMdiClientWindowSize() As Size
For Each ctl As Control In Me.MdiParent.Controls
If TypeOf ctl Is MdiClient Then
Return ctl.Size
End If
Next
Return Nothing
End Function
Các vấn đề liên quan
- 1. Sử dụng khung thực thể với mẫu kho lưu trữ trong WinForms MDI
- 2. Có thể sử dụng Aero Peek cho trẻ em MDI trong một ứng dụng winforms không?
- 3. WinForms - sai dạng kích thước
- 4. Thay đổi Nền của Mẫu MDI
- 5. UINavigationItem Back Button touch area quá lớn
- 6. Setting vị trí của một cửa sổ điều khiển mở trong một WinForms App
- 7. ASP.NET MVC3 Area _ViewStart.cshtml không được triển khai
- 8. Giao diện MDI với FireMonkey
- 9. Kích thước hàng đợi trong Spring AMQP Java client
- 10. Tại sao WinForms của tôi kiểm soát nhấp nháy và thay đổi kích thước chậm?
- 11. Delphi MDI - xử lý mở/đóng/kích hoạt biểu mẫu con
- 12. WinForms ListView, Nhớ vị trí cuộn trên Tải lại
- 13. Kiểm soát kích thước/vị trí của tiêu đề UINavigationItem
- 14. C# Winforms: GroupBox không thay đổi kích thước
- 15. Winforms - thứ tự nạp và kích hoạt sự kiện
- 16. Sự kiện KeyDown không kích hoạt bằng .NET WinForms?
- 17. Kiểu, tập lệnh và hình ảnh trong thư mục Area
- 18. Số API của Cassandra Client Java API
- 19. Sự cố với biểu tượng tạo biểu mẫu con MDI tối đa mới trong .NET
- 20. Django Test Client và Subdomains
- 21. Làm thế nào để làm cho WinForms UserControl lấp đầy kích thước của vùng chứa của nó
- 22. Làm cách nào để có được kích thước của chiều cao thanh tiêu đề của Biểu mẫu Winforms?
- 23. Lưu và Khôi phục Vị trí và Kích cỡ của Biểu mẫu
- 24. tcp client với socket.io (nodejs)
- 25. WinForms DataGridView cỡ chữ
- 26. Mục đích của Console.WriteLine() trong Winforms
- 27. Màu nền của một mục ListBox (winforms)
- 28. ASP.NET Client Time
- 29. HATEOAS Client Design
- 30. Android Rest Client
Cảm ơn, mà làm việc tuyệt vời. Đối với một số lý do tôi đã phải trừ thêm 4 pixel (có thể cho một biên giới khung?), Nhưng tôi có thể sống với điều đó. – Jeff
@Jeff Sử dụng MdiClient.ClientSize thay vì trừ 4 pixel –