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);
출력 내용입니다. Actualwidth
및 ActualHeight
이 0,0부터 시작하기 때문에 0,0에서 WPF 경로를 선택해야합니다.
는 어떻게 절대 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
우리는 이론을 테스트 할 수있는 코드가 충분하지 않지만'UIElement.IsMeasureValid'가'false' 인 경우'ActualWidth'와'ActualHeight'가 정확하다는 희망은 없습니다. –
제 대답을 참조하십시오. 내 이전 의견에서 나는 UpdateLayout이 'Path'에 대해 아무 것도하지 않는다고 말하고자했다. – NVM