Как добавить дополнительные атрибуты к стандартным элементам XAML?
этот метод нажатия кнопки запускает окно под названием " (assemblyname).Отчеты " при нажатии кнопки с содержимым "отчеты":
private void Button_Click(object sender, RoutedEventArgs e)
{
Button button = (Button)e.OriginalSource;
Type type = this.GetType();
Assembly assembly = type.Assembly;
Window window = (Window)assembly.CreateInstance(String.Format("{0}.{1}", type.Namespace, button.Content));
window.ShowDialog();
}
но я хочу, чтобы значение атрибута содержимого кнопки могло измениться, например, оно может измениться на "отчеты о запасах", но я все еще хочу, чтобы нажатие кнопки запускало " (assemblyname).Подотчетный."
есть ли способ добавить атрибуты в тег кнопки, например "TheWindowFileName"?
<Button x:Name="btnReports" Content="Stock Reports" TheWindowFileName="Reports"/>
Если нет, то как еще могу ли я добавить дополнительную информацию к элементам кнопки, которые я могу читать и обрабатывать в коде?
2 ответов
использование вложенного свойства здесь может быть излишним, но вместо этого вы можете попытаться инкапсулировать свое поведение кнопки в команда и передайте данные, которые вы хотите использовать в команде, как CommandParameter
. Это должно сработать.