Tôi đang tạo điều khiển Nhãn tùy chỉnh (chỉ cần Kế thừa điều khiển Nhãn tiêu chuẩn và vẽ lại nền và văn bản) vì tôi cần nền và đường viền rất cụ thể. Trong hàm tạo của điều khiển, tôi đặt thuộc tính AutoSize thành false nên tôi có thể có kích thước mặc định chuẩn cho nhãn mới.Kiểm soát nhãn hoạt động khác nhau tại thời điểm thiết kế so với thời gian chạy
Public Sub New()
'Set the default size of the control to 75x24
Me.Height = 24
Me.Width = 75
'Turn off the autosize property.
Me.AutoSize = False
'Turn on double-buffering.
Me.DoubleBuffered = True
End Sub
Trong ứng dụng của tôi sử dụng điều khiển này, nếu tôi tạo nhãn tùy chỉnh mới tại thời gian chạy (trong mã), thuộc tính AutoSize giữ nguyên và hoạt động bình thường.
Nếu tôi cố gắng thêm nhãn tùy chỉnh mới vào biểu mẫu của tôi tại thời điểm thiết kế, nó đi kèm với thuộc tính AutoSize được đặt thành True và tôi phải đặt thủ công thành False trong cửa sổ thuộc tính. Nó không phải là một vấn đề lớn, nhưng tôi không hiểu tại sao hành vi lại khác.
Bất kỳ ý tưởng nào gây ra sự khác biệt về hành vi này?
Như một lưu ý phụ, trong hàm dựng của bạn, tôi sẽ đặt AutoSize thành false trước khi đặt Chiều cao và Chiều rộng. – NascarEd
@NascarEd, Cảm ơn bạn đã lưu ý. Tôi đã thử cả hai cách và nó dường như không tạo nên sự khác biệt. – Stewbob
Như một lưu ý khác: Sau khi tạo một điều khiển tùy chỉnh, bạn nên thả nó vào một biểu mẫu và kiểm tra mã mà nhà thiết kế tạo ra. Nhà thiết kế thường làm những việc bạn không mong đợi. – NascarEd