C# 如何在wpf中的特定位置初始化新文本框
我正在使用InkCanvas控件,我想在其中添加一个文本框,作为子对象,在特定位置我成功添加了它,但没有在正确的位置?如何转换它或任何其他方法?您可以使用附加的属性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
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标记