Một ToolStripComboBox được đặt sau một ToolStripButton và được folowed bởi một số khác, được căn phải. Làm thế nào để tôi thiết lập ToolStripComboBox tốt nhất để luôn điều chỉnh độ dài của nó để lấp đầy tất cả các khoảng trống có sẵn giữa tiền tố và các ToolStripButtons có hại?Làm thế nào để tạo một ToolStripComboBox để lấp đầy tất cả không gian có sẵn trên một ToolStrip?
Trong quá khứ tôi đã sử dụng để xử lý sự kiện thay đổi kích thước gốc, tính toán độ dài mới để đặt dựa trên tọa độ phần tử lân cận và đặt kích thước mới. Nhưng bây giờ, khi tôi đang phát triển một ứng dụng mới, tôi tự hỏi nếu không có cách nào tốt hơn.
Đây là một vấn đề (tôi không thể nhớ là mình đã có quá khứ như vậy, khi tôi đang sử dụng V2005). Trên mỗi ý nghĩa kỳ lạ (hiệu ứng không diễn ra nếu chênh lệch kích thước nhỏ như vài pixel hoặc hơn) kích thước giảm ToolStripComboBox biến mất (xuất hiện nếu tôi giảm nó một lần nữa (và sẽ biến mất một lần nữa nếu tôi giảm nó một lần nữa) hoặc tăng nó). AutoResize được đặt thành false, tăng một chữ số được trừ (là 4 trong ví dụ của bạn) không giúp được gì. ToolStrip nằm bên trong một bảng điều khiển SplitContainer và được thay đổi kích cỡ mỗi khi một mannel được thay đổi kích thước bằng cách kéo bộ tách SplitContainer. – Ivan
Trường hợp xảy ra phổ biến nhất của mẫu sự cố mà tôi mô tả là khôi phục biểu mẫu từ trạng thái tối đa - cả hai ToolStripComboBoxes (trong bảng điều khiển bên trái và trong bảng bên phải) sẽ biến mất trong trường hợp này. – Ivan
Để ngăn chặn 'ToolStripComboBox' bị biến mất sau khi' User Form' được thay đổi kích thước từ trạng thái tối đa, tôi đã sử dụng hack này: 'ToolStripComboBox.Visible = false; ToolStripComboBox.Visible = true; 'bên trong trình xử lý sự kiện' toolStrip1_Resize' ngay sau 'toolStripComboBox1.Width = ...'. HTH – dee