Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/wpf/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 我想使用Kinect v2根据关节位置移动一个按钮_C#_Wpf_Button_Kinect - Fatal编程技术网

C# 我想使用Kinect v2根据关节位置移动一个按钮

C# 我想使用Kinect v2根据关节位置移动一个按钮,c#,wpf,button,kinect,C#,Wpf,Button,Kinect,我的目的是使用Kinect v2跟踪关节,然后基于该关节位置在画布中移动按钮。 我的问题是按钮:它们不动也不动 这是我的密码: if (joint.JointType == JointType.SpineMid) { ColorSpacePoint space = this.kinectRegion.KinectSensor.CoordinateMapper.MapCameraPointToColorSpace(joint.Position); Point center

我的目的是使用Kinect v2跟踪关节,然后基于该关节位置在画布中移动按钮。 我的问题是按钮:它们不动也不动

这是我的密码:

if (joint.JointType == JointType.SpineMid) {
    ColorSpacePoint space =
    this.kinectRegion.KinectSensor.CoordinateMapper.MapCameraPointToColorSpace(joint.Position);
    Point center = new Point(space.X, space.Y);
    Point[] verticies = Polygon.CalculateVertices(buttons.Count, radius,
                                                  startingAngle, center);

    int i = 0;
    foreach (var button in buttons)
    {
        choices.Add(verticies[i], button);
        i++;
    }

    foreach (var obj in choices)
    {
        Canvas.SetLeft(obj.Value, obj.Key.X);
        Canvas.SetTop(obj.Value, obj.Key.Y);
    }

    choices.Clear();

}
这些按钮在MainWindow.xaml文件中声明为:

<Button x:Name="button1" Panel.ZIndex="1" Height="200" Width="200" Margin="0,436,1712,444" Background="Aqua" Visibility="Hidden" RenderTransformOrigin="-1.02,0.565" />
<Button x:Name="button2" Panel.ZIndex="1" Height="200" Width="200" Margin="927,10,785,870" Background="Aqua" Visibility="Hidden" RenderTransformOrigin="-1.02,0.565" />
<Button x:Name="button3" Panel.ZIndex="1" Height="200" Width="200" Margin="927,849,785,31" Background="Aqua" Visibility="Hidden" RenderTransformOrigin="-1.02,0.565" />
<Button x:Name="button4" Panel.ZIndex="1" Height="200" Width="200" Margin="1702,436,10,444" Background="Aqua" Visibility="Hidden" RenderTransformOrigin="-1.02,0.565" />

<Button x:Name="backButton" Visibility="Visible" Grid.Column="0" Style="{StaticResource BackButtonStyle}" Click="GoBack" />
垂直包含来自按钮的点。
选择是:字典选择=新字典

为什么要再次将按钮放置到画布中?您可以简单地更改它们的画布。左画布。顶部属性,它们将被移动

请格式化您的代码,以便人们可以实际阅读。指定的元素已经是另一个元素的逻辑子元素。首先,它看起来很直截了当。在将按钮添加到另一个按钮之前,需要将其从当前放置的任何位置移除。它不可能有双亲。你是对的,我已经删除了我项目中的那部分代码。现在我正在编辑上面的代码