单击按钮后替换WPF网格的内容

时间:2014-11-27 13:10:33

标签: c# wpf xaml kinect

我正在尝试修改C#Kinect示例(Kinect Fusion Explorer)。

在应用程序的主窗口中,有一个网格可以显示kinect融合提要的3D渲染。

我想知道在单击表单中的按钮后是否可以替换此网格的内容。

<Grid x:Name="CompositeHost" Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" HorizontalAlignment="Left" ClipToBounds="False" >
    <Viewbox Grid.Column="0">
        <Image Name="shadedSurfaceImage"/>
    </Viewbox>
    <Viewport3D Name="GraphicsViewport" IsHitTestVisible="False" >
        <!-- 3D elements are added here programatically, for performance can add the following to line above: RenderOptions.EdgeMode="Aliased"  -->
    </Viewport3D>
</Grid>

现在,Feed使用ViewPort3D输出Feed。我想在按钮点击后输出一个简单的视频输入。以下是XAML对简单视频源的看法:

<Grid>
    <Image Name="videoImage"/>
</Grid>

我对C#和WPF开发完全陌生,所以我只是想知道这是否可以实现,或者我是否需要打开一个全新的窗口来显示视频源。

由于

1 个答案:

答案 0 :(得分:1)

我正在研究一个实际上使用了很多的项目,我需要在不同的网格之间进行导航。我正在使用单个窗口和不同的页面,这是我正在做的非常好的例子: http://www.dotnetfunda.com/articles/show/2214/how-to-do-push-to-press-with-kinect-sdk-17 那是一个不是由我做的项目,但基本上是这样的:

<DockPanel>
        <Frame x:Name="_mainFrame"    NavigationUIVisibility="Hidden" />
</DockPanel>

在这部分中,您声明了mainFrame,它是将在Windows上更改的内容。

(Application.Current.MainWindow.FindName("_mainFrame") as Frame).Source = new Uri("theOtherPage.xaml", UriKind.Relative);

这是点击事件。

请记住使用Uri clas加载不同的资源并命名要更改的大型机。