Я пишу приложение, которое позволит пользователям изменять свойства текстового поля или метки, и эти элементы управления являются элементами управления пользователя. Было бы проще создать отдельный класс для каждого пользовательского элемента управления, который реализует свойства, которые я хочу, чтобы они могли изменить, а затем привязать их к пользовательскому элементу управления? Или есть другой метод, который я пропускаю?C# Property Grid
0
A
ответ
1
Создайте пользовательский атрибут и пометьте свойства, которые вы хотите, чтобы пользователь редактировал с помощью этого атрибута. Затем установите BrowsableAttribute свойство на сетке свойств в коллекции, содержащей только пользовательский атрибут:
public class MyForm : Form
{
private PropertyGrid _grid = new PropertyGrid();
public MyForm()
{
this._grid.BrowsableAttributes = new AttributeCollection(new UserEditableAttribute());
this._grid.SelectedObject = new MyControl();
}
}
public class UserEditableAttribute : Attribute
{
}
public class MyControl : UserControl
{
private Label _label = new Label();
private TextBox _textBox = new TextBox();
[UserEditable]
public string Label
{
get
{
return this._label.Text;
}
set
{
this._label.Text = value;
}
}
[UserEditable]
public string Value
{
get
{
return this._textBox.Text;
}
set
{
this._textBox.Text = value;
}
}
}
Смежные вопросы
- 1. C# Property Grid Pass Constructor Variable
- 2. Property Grid Custom Editor
- 3. Property Grid for Cocoa
- 4. WPF Property Grid
- 5. WPF Property grid using PropertyInspectorView
- 6. Property Grid> как обновить основное свойство
- 7. Nullable Enum property in kendo Grid
- 8. Переменная только для чтения в Property Grid
- 9. VS Property Grid не показывает свойства класса
- 10. Kendo grid sort by nullable property
- 11. Событие не отображается в Property Grid
- 12. Можете ли вы связать Property Grid с источником данных?
- 13. C# XAML grid Expander
- 14. Objective-C Property Access
- 15. C# Static Property Locking
- 16. C# Shorthand Property Question
- 17. @property problem - Objective C
- 18. C# void property
- 19. C# property collection/flag
- 20. C# pass property
- 21. @property из Objective-C
- 22. malloc property object c
- 23. C# form Handle property
- 24. C# индексатор Property Вопрос
- 25. C# CodeDom Automatic Property
- 26. @property object-c синтаксис
- 27. Objective-C: C структура в @property с пользовательской функцией Deallocation
- 28. Получить коллекции и перечисления Выбранное значение WPF Property Grid
- 29. Предоставление сбора аргументов для деятельности в Property Grid
- 30. Xceed Property Grid: Редактор коллекции не расширяется в правильном направлении
Ах, я вижу, я дам этому выстрел. Спасибо. – Nathan
Филипп - это другой процесс, чем тот, который здесь? http://www.c-sharpcorner.com/UploadFile/mgold/PropertyGridInCSharp11302005004139AM/PropertyGridInCSharp.aspx Кроме того, если вы знаете, как я могу добавить поле со списком в сетку свойств? – Nathan
Взгляните на эту статью: http://www.codeproject.com/KB/tabs/PropertyGridValidation.aspx –