因此,如果我在XAML设计器中使用SwapChainPanel
元素,则会出现设计时错误,指出无法创建该元素。我使用Microsoft的SwapChainPanel
sample app开箱即用。在Visual Studio 2013.3中,我看到一个丑陋的"无法创建" D3DPanel"的实例。"在Scenario1.xaml的设计视图中。
我想知道是否有办法为这个元素提供后备数据,所以我在设计器和Blend中看到了一些东西。我找到了一些关于数据绑定控件的设计器数据的例子,但到目前为止还没有DirectX。
编辑:这里是来自SwapChainPanel演示的Scenario1.xaml文件中设计器的堆栈跟踪。我们似乎能够自己创建SwapChainPanel,但是当有像D3DPanel这样的自定义C#类时,它会窒息:
at Microsoft.Expression.Platform.InstanceBuilders.InstanceBuilderOperations.InstantiateType(Type type,Boolean supportInternal) 在Microsoft.Expression.Platform.InstanceBuilders.ClrObjectInstanceBuilder.InstantiateTargetType(IInstanceBuilderContext context,ViewNode viewNode) 在Microsoft.Expression.WindowsXamlPlatform.InstanceBuilders.GridInstanceBuilder.InstantiateTargetType(IInstanceBuilderContext context,ViewNode viewNode) 在Microsoft.Expression.Platform.InstanceBuilders.ClrObjectInstanceBuilder.Instantiate(IInstanceBuilderContext context,ViewNode viewNode) 在Microsoft.Expression.WindowsXamlPlatform.InstanceBuilders.FrameworkElementInstanceBuilder.Instantiate(IInstanceBuilderContext context,ViewNode viewNode) 在Microsoft.Expression.Platform.InstanceBuilders.ViewNodeManager.CreateInstance(IInstanceBuilder builder,ViewNode viewNode)
违规的XAML元素类似于<renderer:D3DPanel x:Name="DirectXPanel1" Height="300" Width="300" />
。