How to add text to inkcanvas with code?
4 answers
There is a common child property: http://msdn.microsoft.com/en-us/library/system.windows.controls.inkcanvas.children.aspx
Check examples for sample code
0
source to share
private void drawTextBox(object sender, MouseEventArgs e)
{
TextBox = new TextBox();
myInkCanvas.Children.Add(myTextBox);
myTextBox.Visibility = Visibility.Visible;
Point mousePos = e.GetPosition(myInkCanvas);
double left = Math.Min(mouseDownPos.X, mousePos.X);
double top = Math.Min(mouseDownPos.Y, mousePos.Y);
myTextBox.Width = Math.Abs(mouseDownPos.X - mousePos.X);
myTextBox.Height = Math.Abs(mouseDownPos.Y - mousePos.Y);
InkCanvas.SetLeft(myTextBox, left);
InkCanvas.SetTop(myTextBox, top);
}
you can get mouseDownPos in:
private void myInkCanvas_PreviewMouseLeftButtonDown(objectsender,MouseButtonEventArgs){
mouseDownPos = e.GetPosition(myInkCanvas);
}
This is simple code that you can use in your program.
0
source to share