お世話になっております。
C#のWPFで子孫要素を取得する方法についてお教えいただきたいのですが、
以下のようなxaml上でViewboxの定義をし、Viewboxの子孫要素であるPathの値を変更したい場合の
実現方法方法を教えていただきたいです。
xaml
1<Viewbox x:Key="testCanvasImage"> 2 <Canvas Width="20" Height="20"> 3 <Canvas> 4 <Canvas.RenderTransform> 5 <TranslateTransform X="0" Y="0"/> 6 </Canvas.RenderTransform> 7 <Canvas> 8 <Canvas.RenderTransform> 9 <MatrixTransform Matrix=""/> 10 </Canvas.RenderTransform> 11 <!-- この値を変更したい --> 12 <Path Fill="#000000" StrokeThickness="0"> 13 <Path.Data> 14 <PathGeometry Figures=""/> 15 </Path.Data> 16 </Path> 17 <!-- この値を変更したい --> 18 </Canvas> 19 </Canvas> 20 </Canvas> 21</Viewbox>
単純にViewboxの子要素であるPathを変更する場合は、以下のようなコードで設定できるかと思います。
xaml
1<Viewbox x:Key="testCanvasImage"> 2 <Path Fill="#FFFFFF" Stretch="Fill"/> 3</Viewbox>
c#
1this.viewBox = new ViewBox() 2this.viewBox = FindResource(testCanvasImage) as ViewBox; 3 4Path path = this.viewBox.Child as Path; 5if ( path != null ) 6{ 7 path.Fill = #000000; 8}
何卒宜しくおねがいします。
Path に x:Name を付ければいいのでは?

回答2件
あなたの回答
tips
プレビュー