UIElement在运行时的转换错误

时间:2010-07-16 16:11:06

标签: c# silverlight silverlight-4.0 dependencyobject uielement

执行此操作时出现运行时错误。

我有这堂课:

public abstract class AnnObject : DependencyObject

当我这样做它编译得很好,但抛出运行时错误......

AnnObject aa;
var b = (DependencyObject)aa;
var c = (UIElement)b;

我得到的错误是无法将AnnObject强制转换为UIElement

有人可以简要解释一下这种行为吗?

2 个答案:

答案 0 :(得分:4)

Silverlight for UI组件中的类层次结构是: -

DependencyObject
  UIElement
    FrameworkElement
      Control

正如亨氏所指出的那样,您需要从UIElement订单派生才能投射到UIElementDependencyObject。我个人看不出来自DependencyObject那么有用。我通常会从FrameworkElementControl或更高版本开始。

答案 1 :(得分:2)

您只来自DependencyObject,而不是来自UIElement