2016-03-31 14 views
0
<Style x:Key="ICON" TargetType="Rectangle"> 
<Setter Property="Fill"> 
    <Setter.Value> 
    <DrawingBrush TileMode="None"> 
     <DrawingBrush.Drawing> 
     <DrawingGroup> 
      <GeometryDrawing Brush="Gray" Geometry="F1M19.5625,0.999954C29.8144,0.999954 38.125,9.31053 38.125,19.5625 38.125,29.8142 29.8143,38.1249 19.5625,38.1249 9.31073,38.1249 1,29.8142 1,19.5625 1,9.31053 9.31064,0.999954 19.5625,0.999954z"> 
      <GeometryDrawing.Pen> 
       <Pen DashCap="Square" EndLineCap="Flat" LineJoin="Round" MiterLimit="10" StartLineCap="Flat" Thickness="2"> 
       <Pen.Brush> 
        <LinearGradientBrush EndPoint="0.849422,0.849423" StartPoint="0.150577,0.150578"> 
        <GradientStop Color="#FF657783" Offset="0"/> 
        <GradientStop Color="White" Offset="0.146"/> 
        <GradientStop Color="#FF2C4758" Offset="1"/> 
        </LinearGradientBrush> 
       </Pen.Brush> 
       <Pen.DashStyle> 
        <DashStyle/> 
       </Pen.DashStyle> 
       </Pen> 
      </GeometryDrawing.Pen> 
      </GeometryDrawing> 

      <DrawingGroup> 
      <GeometryDrawing Brush="Gray" Geometry="F1 M0,25 L25,50, 50,25 25,0z"> 
       <GeometryDrawing.Pen> 
       <Pen DashCap="Triangle" EndLineCap="Flat" LineJoin="Bevel" MiterLimit="10" StartLineCap="Flat" Thickness="5"> 
        <Pen.Brush> 
        <LinearGradientBrush> 
         <GradientStop Color="#FF657783" Offset="0"/> 
         <GradientStop Color="White" Offset="0.5"/> 
         <GradientStop Color="#FF2C4758" Offset="1"/> 
        </LinearGradientBrush> 
        </Pen.Brush> 
        <Pen.DashStyle> 
        <DashStyle/> 
        </Pen.DashStyle> 
       </Pen> 
       </GeometryDrawing.Pen> 
      </GeometryDrawing> 

      <DrawingGroup.Transform> 
       <TranslateTransform X="0.2" Y="0.2" /> 
      </DrawingGroup.Transform> 
      </DrawingGroup> 
     </DrawingBrush.Drawing> 
     </DrawingBrush> 
    </Setter.Value> 
    </Setter> 
</Style> 

内側のアイコンは外側のアイコンを支配するはずですが、ここではその逆が起こります。私の最初の推測では、変換は機能していませんが、それ以上の観察では、コードが正しく書かれているように感じます。誰でもここで間違いを指摘できますか?xamlでGeomectryDrawingで変換が機能しない

答えて

2

動作していますが、プロパティを少し調整する必要があります。したがってコードはこのようになります。また、私はrombをスケーリングするためのコードを追加しました。

<DrawingGroup.Transform> 
    <TransformGroup> 
     <TranslateTransform X="12" Y="12" /> 
     <ScaleTransform ScaleX="0.75" ScaleY="0.75" /> 
    </TransformGroup> 
</DrawingGroup.Transform> 
+0

ありがとうbar222。これは私の問題を解決しました。 – user109260

関連する問題