1
我正在嘗試獲取Thumb
的Slider
。爲什麼控制模板在啓動時爲空?
_thumb = ((Track)AssociatedObject.Template.FindName("PART_Track", AssociatedObject))?.Thumb;
這拋出NRE,因爲Template
爲空。爲什麼Template
在應用程序啓動過程中爲空?我該如何解決這個問題?
我試過下面
AssociatedObject.ApplyTemplate(); // no effect. returns false.
var template = AssociatedObject.Template; // returns null.
代碼即使我應用模板其仍然爲空。
以前我重寫滑塊OnApplyTemplate
和模板不是null。
public override void OnApplyTemplate()
{
// works fine.
_thumb = ((Track)this.Template.FindName("PART_Track", this))?.Thumb;
base.OnApplyTemplate();
}
但現在我正在嘗試創建滑塊的行爲,而不是創建一個子類,所以我不能重寫。任何想法如何解決這個問題?