【问题标题】:How to avoid waiting for Silverlight templated control initialisation in context of MVVM如何避免在 MVVM 上下文中等待 Silverlight 模板化控件初始化
【发布时间】:2010-09-28 14:58:30
【问题描述】:

我正在尝试在应用程序中制作和使用模板化控件,但我似乎遇到了时间问题。当我在 XAML <local:MyControl> 中并通过代码 (new MyControl()) 使用自定义模板化控件,并在控件上调用一个尝试对 Controltemplate 中的控件执行某些操作的方法时,模板中的控件几乎总是即使在 OnApplyTemplate 方法之后也是 null。一种解决方案是等待控件初始化,使用 OnApplyTemplate 方法中引发的事件,然后让代码对模板中的控件执行某些操作,但这似乎复制了我不应该担心的控件/框架功能关于。

所以问题是:

从 Themes\Generic.xaml 加载 ControlTemplate 是异步的吗? 如何在 MVVM 上下文中使用这些多级模板化控件?

【问题讨论】:

    标签: silverlight mvvm controltemplate


    【解决方案1】:

    在 OnApplyTemplate 中,您需要使用 GetTemplateChild 方法来访问控件。有关控件生命周期的说明,请参阅 here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-05-21
      • 2020-11-01
      • 2011-01-18
      相关资源
      最近更新 更多