Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/image-processing/2.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# 如何在wpf中的特定位置初始化新文本框_C#_Wpf_Textbox - Fatal编程技术网

C# 如何在wpf中的特定位置初始化新文本框

C# 如何在wpf中的特定位置初始化新文本框,c#,wpf,textbox,C#,Wpf,Textbox,我正在使用InkCanvas控件,我想在其中添加一个文本框,作为子对象,在特定位置我成功添加了它,但没有在正确的位置?如何转换它或任何其他方法?您可以使用附加的属性Left和Top,如下所示: var myTextBox = new TextBox(); myCanvas.Children.Add( myTextBox ); InkCanvas.SetLeft( myTextBox, someLeftValue ); InkCanvas.SetTop( myTextBox, someTopVal

我正在使用InkCanvas控件,我想在其中添加一个文本框,作为子对象,在特定位置我成功添加了它,但没有在正确的位置?如何转换它或任何其他方法?

您可以使用附加的属性
Left
Top
,如下所示:

var myTextBox = new TextBox();
myCanvas.Children.Add( myTextBox );
InkCanvas.SetLeft( myTextBox, someLeftValue );
InkCanvas.SetTop( myTextBox, someTopValue );
不是面板类型(请注意,它继承自FrameworkElement),但它确实包含附加属性(如Ed S.所述),允许您将子对象定位为画布面板:


或者,也可以插入面板作为InkCanvas的子级。例如:



Nope inkcanvas没有从画布上驱动,并且在中没有。左和右。top@salamonti:是的,它有(有那些方法),我只是查阅了文档。它是一个静态方法,而不是实例方法。但它不是从画布派生的,这就是我之前删除该行的原因。通过调用父类中的静态方法来使用附加属性。您可以像我在最后两行中所展示的那样使用它们,而不是作为实例方法。它有那些附加的方法,但是您应该在
InkCanvas
类上调用它们,而不是在Canvas上调用它们。@salamonti请编辑您的问题以添加代码或XAML-通过纯粹的猜测很难诊断您的问题。在标记中,我用c#而不是XAML标记