我正在尝试在应用程序中制作和使用模板化控件,但我似乎遇到了计时问题。当我在XAML <local:MyControl>
和代码(new MyControl())中使用自定义模板化控件,并在控件上调用试图对Controltemplate中的控件执行某些操作的方法时,模板中的控件是即使在OnApplyTemplate方法之后,几乎总是为null。一种解决方案是使用OnApplyTemplate方法中抛出的事件等待控件初始化,然后让代码对模板中的控件执行某些操作,但这似乎复制了我不应该担心的控件/框架功能约。
所以问题是:
从Themes \ Generic.xaml加载ControlTemplate是否是异步的? 如何在MVVM上下文中使用这些多级模板化控件?