Чтобы найти элементы управления в WPF, нужно использовать класс VisualTreeHelper, но у этого класса нет способа находить элементы по названию, поэтому я поискал по сети и выбрал следующий класс, который, как мне кажется, очень удобен в использовании.
Опубликуйте это для справки.
Это очень просто в использовании, например, найдите текстовое поле под названием «myTextBox» в столбце шаблона в datagrid, вы можете написать его так:
Примечание: при инициализации страницы, если код для поиска управления помещается в событие Loaded, управление не будет найдено. Его следует разместить в событии LayoutUpdateed, когда XAML загружается и все подконтроллеры можно будет извлечь.
Однако событие LayoutUpdated будет срабатывать, пока страница обновлена, и если мы хотим добиться эффекта события Loaded, мы можем установить флаг для управления кодом для выполнения только один раз при инициализации, и я не придумал лучшего способа реализовать это, примерно так:
|