Измените автоматически генерируемый текст XAML, когда настраиваемый элемент управления перетаскивается из панели инструментов в главное окно.

Когда настраиваемый элемент управления wpf добавляется на панель инструментов и перетаскивается в MainWindow, автоматически сгенерированный текст в редакторе XAML по умолчанию содержит некоторые свойства = значения.

Как я могу изменить этот текст, чтобы он автоматически включал некоторые новые свойства моего пользовательского элемента управления и/или удалял другие?


person Athansios Savvidis    schedule 01.08.2017    source источник
comment
вы неправильно понимаете: когда элемент управления wpf перетаскивается в окно из панели инструментов, автоматически сгенерированный текст в редакторе XAML содержит некоторые свойства = значения, которые не равны значениям по умолчанию. Какой смысл повторять дефолты??   -  person ASh    schedule 02.08.2017


Ответы (1)


Вы можете получить довольно гибкое поведение во время разработки с комбинацией System.ComponentModel атрибутов и DependencyProperty метаданных. Класс PropertyMetadata имеет конструктор, который принимает значение по умолчанию:

[Category("MyCustomCategory")]
public string MyCustomProperty
{
    get { return GetValue(MyCustomPropertyProperty).ToString(); }
    set { SetValue(MyCustomPropertyProperty, value); }
}
public static DependencyProperty MyCustomPropertyProperty =
    DependencyProperty
    .Register(
        "MyCustomProperty",
        typeof(string),
        typeof(MyCustomUserControl),
        new PropertyMetadata("My default value")); // <--- default value

введите здесь описание изображения

person Jason Boyd    schedule 01.08.2017