我想将WPF路径添加到InkCanvas
并使用选择来选择WPF路径。 所以,我使用这个代码。为什么ActualWidth和ActualHeight从0,0开始?
System.Windows.Shapes.Path path = drawCanvas.Children[i] as System.Windows.Shapes.Path;
drawCanvas.Children.RemoveAt(i);
inkCanvas.Children.Add(path);
这是输出。我必须从0,0中选择WPF Path,因为Actualwidth
和ActualHeight
从0,0开始。
如何选择绝对WPF路径?
感谢
编辑:现在
,我完全可以通过使用此代码选择它。
System.Windows.Shapes.Path path = drawCanvas.Children[i] as System.Windows.Shapes.Path;
drawCanvas.Children.RemoveAt(i);
path.Margin = new Thickness(-getMinX(path), -getMinY(path), 0, 0);
containPath.Children.Add(path);
containPath.Width = getMaxX(path) - getMinX(path);
containPath.Height = getMaxY(path) - getMinY(path);
containPath.Margin = new Thickness(getMinX(path), getMinY(path), 0, 0);
inkCanvas.Children.Add(containPath);
我不认为UpdateLayout会做任何事情。 – NVM 2011-01-05 05:35:32
我们没有足够的代码来测试理论,但是如果'UIElement.IsMeasureValid'是'false',那么'ActualWidth'和'ActualHeight'没有希望是正确的。 – 2011-01-05 05:42:46
请看我的答案。在我之前的评论中,我的意思是说,UpdateLayout不会为“路径”做任何事情。 – NVM 2011-01-05 05:44:55