![](/img/trans.png)
[英]How can I split MainWindow.xaml into separate files? - Outsourcing of <Style>?
[英]How can i link a canvas on a grid, to the mainwindow.xaml?
我在网格中有一个画布,我想将画布保留在该网格中,因为它是在程序中打开的第一个窗口。
在我的MainWindow.xaml中,我有一个ContentPage
,它总是更改其内容,启动内容是authenticationPage。 在此页面中,我有一个Canvas
,它显示我的骨骼跟踪,并用于做出手势。 这个gestureCanvas
位于我的authenticationPage
。 这个gestureCanvas
背后的代码在我的MainWindow.xaml.cs中。
我需要将gestureCanvas
与我的MainWindow.xaml.cs链接,因为代码在MainWindow
后面,并且将在此处使用,因为它是Kinect应用程序。
如何链接这些?
partial class MainWindow
{
void LoadCircleGestureDetector()
{
using (Stream recordStream = File.Open(circleKBPath, FileMode.OpenOrCreate))
{
circleGestureRecognizer.TraceTo(gesturesCanvas, Colors.Red);
}
}
}
这是我的认证页面
<UserControl
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" xmlns:local="clr-namespace:smartHome2011"
xmlns:MyUserControl="clr-namespace:MyUserControl;assembly=MyUserControl"
mc:Ignorable="d"
x:Class="smartHome2011.AuthenticationPage"
x:Name="UserControl"
d:DesignWidth="640" d:DesignHeight="480">
<Grid x:Name="LayoutRoot">
<Grid x:Name="kinectGrid" HorizontalAlignment="Left">
<Viewbox Margin="204,220,430,220">
<Grid ClipToBounds="True" Margin="204,220,430,220">
**<Canvas x:Name="gesturesCanvas" />**
<Canvas x:Name="kinectCanvas"></Canvas>
</Grid>
</Viewbox>
</Grid>
</Grid>
在MainWindow后面的代码中,您可以尝试以下
var gesturesCanvas = YourContentPage.FindName("gesturesCanvas") as Canvas;
if (gesturesCanvas != null) {
// do something
}
希望这可以帮助
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.