Wpf 引用ObjectDataProvider标记中的嵌套类型

Wpf 引用ObjectDataProvider标记中的嵌套类型,wpf,objectdataprovider,Wpf,Objectdataprovider,我试图在我的ObjectDataSource文章中使用嵌套类型。它似乎对我不起作用 <ObjectDataProvider x:Key="myProvider" ObjectType="{x:Type local:OutsideClass+InsideClass}" MethodName="GetObjects" /> 这是VS 2008及以后的一个已知问题: 虽然您正在编写的XAML显然是合法的,在运行时工作,并在Expression Blend中正确加载,但我们目前认为,在应用

我试图在我的ObjectDataSource文章中使用嵌套类型。它似乎对我不起作用

<ObjectDataProvider x:Key="myProvider" ObjectType="{x:Type local:OutsideClass+InsideClass}" MethodName="GetObjects" />

这是VS 2008及以后的一个已知问题:

虽然您正在编写的XAML显然是合法的,在运行时工作,并在Expression Blend中正确加载,但我们目前认为,在应用程序构建中,使用和访问标记扩展中的嵌套类并不常见


解决嵌套类型的
x:Type
引用的一种方法是定义一个新的标记扩展,并使用它来代替
x:Type
标记扩展。我在中发布了一个这样的信息,包括
Type2Extension
类的源代码

Type2Extension
不会像
TypeExtension
那样产生设计器错误。也许这不会发生在VS 2010中

唯一需要注意的是,与
{x:Type
typename
}
一起使用的原始
TypeExtension
Type2Extension
更健壮(例如,检查参数是否为null并引发异常)