我为A类定义了依赖项属性。但是,我可以在B的一个实例中查询该属性的值。为什么?常规依赖项属性返回值(即使它尚未为类定义)
为了说明,看起来这个代码(WPF):
using System.Windows;
namespace Sample
{
/// <summary>
/// Interaction logic for MainWindow.xaml
/// </summary>
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
var propDefinedForA = DependencyProperty.Register("SomeProperty", typeof(int), typeof(A), new PropertyMetadata(defaultValue: 10));
var b = new B();
var value = b.GetValue(propDefinedForA);
}
}
public class A: DependencyObject
{
}
public class B: DependencyObject
{
}
}
此代码的执行之后,将值为10。这是为什么甚至可能吗?我没有定义DP为B类,而是为A.
这种行为的原因是什么?