XamlReader.Load
не разрешено прикреплять eventHandlers
в нем.поэтому используйте эту технику для динамического присоединения eventHandlers
к ней.
1 - Напишите свою строку Xaml без eventHandlers
- Но напишите свойство Name этих элементов управления.
2 - Загрузитестрока с XamlReader.Load(str);
3- Затем загрузите содержимое DataTemplate из него.используя Grid template = ((Grid)(dt.LoadContent()));
Примечание: здесь Grid
является родительским элементом управления в DataTemplate
.
4- Найдите элемент управления по имени, к которому вы хотите присоединить обработчик событий.Button img = (Button)template.FindName("MyButtonInDataTemplate");
Надеюсь, это поможет.