Vấn đề này được chứng minh tốt hơn giải thích, vì vậy tôi đã thiết lập một dự án git repo được sử dụng để xem sự cố đang hoạt động.Điều khiển được đặt trong TableLayout không tự động kích thước nhỏ hơn kích thước của chúng
Tôi có một dự án mà tôi đã thêm điều khiển ComboBox (comboField
) vào điều khiển TableLayout (tableLayoutPanel1
). Tôi đã đặt thuộc tính Dock
của ComboBox thành Fill
để nó điền vào ô của điều khiển TableLayout mà nó đã được đặt vào. Tôi cũng đã đặt thuộc tính Dock
của điều khiển TableLayout thành Fill
để nó điền vào Biểu mẫu nó đã được đặt trên. Chiều rộng của ComboBox hiện tại là 193 pixel.
Khi tôi chạy biểu mẫu và tăng chiều rộng của biểu mẫu, kích thước của ComboBox tăng, như mong đợi. Khi tôi giảm kích thước của biểu mẫu, ComboBox giảm kích thước cho đến khi nó đạt đến kích thước ban đầu (193 pixel). Tại thời điểm đó, chiều rộng của ComboBox sẽ không giảm thêm nữa, dẫn đến phía bên phải của điều khiển bị cắt bớt. Điều này trái với những gì tôi mong đợi: chiều rộng của ComboBox sẽ giảm xuống 0, cho rằng không có MinimumSize
nào được chỉ định. Không có MinimumSize
được chỉ định cho bất kỳ điều khiển nào khác trên biểu mẫu, chẳng hạn như điều khiển TableLayout.
Trong trường hợp có liên quan, chiều rộng của cột đầu tiên của TableLayout được đặt thành kích thước Absolute
là 100 pixel, trong khi chiều rộng của cột thứ hai của TableLayout đã được đặt thành AutoSize
.
Bất cứ ai có thể làm sáng tỏ lý do tại sao biểu mẫu này hoạt động trái với mong đợi của tôi và tư vấn về cách tôi có thể làm việc này theo cách mình muốn? Bất kì sự trợ giúp nào đều được đánh giá cao.
này hoạt động! Cảm ơn! https://github.com/IAmAI/TableLayoutSizingIssueTest/tree/fix-Me.Name –