thể trùng lặp:
Text property in a UserControl in C#Làm cách nào để hiển thị thuộc tính Văn bản của UserControl?
Làm thế nào để đánh dấu Text
tài sản của một UserControl
như có thể xem?
Lớp .NET UserControl
có thuộc tính Text
.
Thật không may là Text
tài sản của một UserControl
không browsable là:
//
//
// Returns:
// The text associated with this control.
[Bindable(false)]
[EditorBrowsable(EditorBrowsableState.Never)]
[Browsable(false)]
[DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden)]
public override string Text { get; set; }
Trong UserControl
tôi muốn để lộ các Text
tài sản (ví dụ: làm cho nó "thể xem") trong cửa sổ thuộc tính. Tôi đã thử một cách mù quáng tuyên bố nó có thể duyệt được:
[Browsable(true)]
public override string Text { get; set; }
và bây giờ nó xuất hiện trong cửa sổ thuộc tính, ngoại trừ bây giờ nó không có gì.
Tôi đã cố gắng một cách mù quáng gọi base.Text
để mang lại các chức năng:
[Browsable(true)]
public override string Text { get {return base.Text;} set { base.Text = value; this.Invalidate(); } }
và bây giờ tài sản thực hiện chức năng tại thời gian thiết kế, nhưng giá trị tài sản không được tồn đến Form.Designer.cs
và nó InitalizeComponent
mã.
các thích cách để vạch trần những UserControl
Text
tài sản để nó là gì:
- có thể xem được trong cửa sổ thuộc tính
- là chức năng
- là vẫn kiên trì trong thiết kế mẫu
và, làm tiền thưởng:
- biết khi nào nó thay đổi
Không hẳn một bản sao chính xác. Câu hỏi của tôi là * cách * (nghĩa là cách thích hợp, trái ngược với việc nghiền bàn phím ngẫu nhiên của tôi) để làm cho một thuộc tính có thể xem được. Câu hỏi khác là thuộc tính đã có thể xem được nhưng không được đăng. –