Wpf UIElement与FrameworkElement

Wpf UIElement与FrameworkElement,wpf,frameworkelement,uielement,Wpf,Frameworkelement,Uielement,我不清楚什么时候会使用UIElement而不是FrameworkElement,为什么会有FrameworkElement类。本质上,FrameworkElement与UIElement相比,它提供的额外功能是什么?您永远不应该从UIElement继承(除了FrameworkElement之外,没有任何类),除此之外,它没有DataContext,这会让您陷入一些麻烦 @mihajlv的可能重复:这个问题的答案可能是错误的,这与它是否重复无关。@mihajlv:绑定也与调度程序无关……所以需要澄

我不清楚什么时候会使用
UIElement
而不是
FrameworkElement
,为什么会有
FrameworkElement
类。本质上,
FrameworkElement
UIElement
相比,它提供的额外功能是什么?

您永远不应该从
UIElement
继承(除了
FrameworkElement
之外,没有任何类),除此之外,它没有
DataContext
,这会让您陷入一些麻烦

@mihajlv的可能重复:这个问题的答案可能是错误的,这与它是否重复无关。@mihajlv:绑定也与调度程序无关……所以需要澄清的是,UIElement没有提供任何布局、数据绑定、样式、模板和资源。@H.B,如果UIElement不参与布局,它为什么会有测量和排列方法?@emperoaiman:关于它不参与布局的说法可能不准确,它似乎有一些基本功能,但没有具体的实现,也没有办法轻松调整大小(因为所有这些属性都丢失了)。我不知道分离
UIElement
FrameworkElement
之间的原因,但只要看看存在哪些类,人们就有理由使用
FrameworkElement