C# 在代码隐藏中定义HelixViewport3D与在XAML中不同吗?

C# 在代码隐藏中定义HelixViewport3D与在XAML中不同吗?,c#,helix-3d-toolkit,C#,Helix 3d Toolkit,将ModelVisual3D添加到XAML或代码隐藏中定义的HelixViewport3D时会有所不同 在我的XAML中,我有: 在代码隐藏中: 私有模型Visual3D getData(){ ModelImporter=新的ModelImporter(); Model3D model=importer.Load(@“c:\test\test.obj”); Model3DGroup=新的Model3DGroup(); 组。子组。添加(模型); ModelVisual3D myModelVis

将ModelVisual3D添加到XAML或代码隐藏中定义的HelixViewport3D时会有所不同

在我的XAML中,我有:


在代码隐藏中:

私有模型Visual3D getData(){
ModelImporter=新的ModelImporter();
Model3D model=importer.Load(@“c:\test\test.obj”);
Model3DGroup=新的Model3DGroup();
组。子组。添加(模型);
ModelVisual3D myModelVisual3D=新的ModelVisual3D();
myModelVisual3D.Content=组;
返回myModelVisual3D;
}
私有void Test1(){
///不渲染
HelixViewport3D v=新的HelixViewport3D();
v、 Add(getData());
m_螺旋视窗=v;
}
私有void Test2(){
///渲染正常
m_helix_viewport.Children.Add(getData());
}
问题是为什么Test1()不呈现,而Test2()可以。
IMHO XAML定义与代码定义不同-缺少一些东西-但是什么?

看起来字段m_helix_视口只是对绑定到视图的控件的实际实例的引用。将该控件的新实例指定给该字段时,引用将丢失,并且由于新控件未绑定到从xaml加载的视图,因此对新控件属性的更改不会影响视图。如果您签出生成的代码隐藏文件,则有一个名为Connect的方法。在此方法中,控件的已创建实例将分配给生成的字段。换句话说,实例是由其他一些代码创建的,引用被传递到代码隐藏类。

是的-谢谢-我正在尝试呈现XAML中不存在的控制中的某些内容,但这对我来说并不容易:-(