从C#项目的另一个cs文件中的DragCanvas_uuu类中获取两个变量的值时出现问题。是DragCanvas错误吗?
我有一个WPF C#项目和一个DragCanvas#类(请参阅),这样我就可以在DragCanvas之间移动我在WPF项目的MainWindow.xaml-file中创建的每个子元素,即在从C#项目的另一个cs文件中的DragCanvas_uuu类中获取两个变量的值时出现问题。是DragCanvas错误吗?,c#,wpf,xaml,move,drag,C#,Wpf,Xaml,Move,Drag,我有一个WPF C#项目和一个DragCanvas#类(请参阅),这样我就可以在DragCanvas之间移动我在WPF项目的MainWindow.xaml-file中创建的每个子元素,即在之间,您不应该在代码隐藏中创建DragCanvas的新实例。相反,您应该访问已经添加到XAML标记中的属性: Console.WriteLine(dragCanvas_.LeftMargin); Console.WriteLine(dragCanvas_.TopMargin); <jas:DragCa
之间,您不应该在代码隐藏中创建DragCanvas
的新实例。相反,您应该访问已经添加到XAML标记中的属性:
Console.WriteLine(dragCanvas_.LeftMargin);
Console.WriteLine(dragCanvas_.TopMargin);
<jas:DragCanvas_ x:Name="dragCanvas_" ... />
“dragCanvas_389;”是指XAML标记中元素的名称:
Console.WriteLine(dragCanvas_.LeftMargin);
Console.WriteLine(dragCanvas_.TopMargin);
<jas:DragCanvas_ x:Name="dragCanvas_" ... />
谢谢你的建议。我尝试了您的建议,这是有道理的,因为dragCanvas已经是一个对象,并且引用了XAML标记的名称。在MainWindow.xaml.cs-file中,我首先编写了public void WriteLeftMarginInConsole(){Console.WriteLine(dragCanvas_u.TopMargin);}
TopMargin作为示例。但是控制台不显示控制台中的像素。如果我写Console.WriteLine(TopMargin)
在DragCanvas_uucs文件中,它的工作原理正如我在第一篇文章中所说的。通常你的建议应该有效。但不幸的是:@s950mpc2000:在主窗口中调用writeleftmarginonsole()
的位置和方式是什么?设置完画布的属性后,您需要调用它。我编写了public void writeleftmarginonsole()
{
控制台.WriteLine(dragCanvas_uu.TopMargin);
}
作为MainWindow.xaml.cs的最后一个方法,例如,在MainWindow.xaml.cs文件的末尾。@s950mpc2000:但是如何以及在何处调用它?它不叫自己…@s950mpc2000:太好了。如果您有其他问题,请随时提出新问题。
<jas:DragCanvas_ x:Name="dragCanvas_" ... />