【发布时间】:2012-07-17 06:56:19
【问题描述】:
我有一个使用某个继承的附加属性的控件,我发现我无法在构造函数中访问该属性,这是合理的,因为在那个阶段该控件不是可视化树的一部分,并且所以它不能继承任何附加的属性。
// Constructor
public MyClassName()
{
InitializeComponent();
MyValue value = DeclaringClass.GetMyAttachedProperty(depObj); // value == null
}
当我尝试在Loaded 事件期间访问该属性时,我能够检索到该值:
// Constructor
public MyClassName()
{
InitializeComponent();
Loaded += OnLoaded;
}
void OnLoaded(object sender, RoutedEventArgs e)
{
Loaded -= OnLoaded;
MyValue value = DeclaringClass.GetMyAttachedProperty(depObj); // value != null
// Do something with value
}
所以这让我想到了我的问题 - 控件生命周期中可以访问继承的附加属性的最早阶段是什么?在Loaded 事件中,有没有更好的地方可以这样做?
【问题讨论】:
标签: c# wpf dependency-properties attached-properties object-lifetime