2017-01-10 11 views
1

私はセパレータを回転させるカスタムスタイルを設定しようとしています。LayoutTransformカスタムスタイルwpf

このコードは動作しますが、カスタムスタイルではありません。

<Style x:Key="CustomStandaloneSeparatorStyle" TargetType="Separator"> 
      <Setter TargetName="LayoutTransformProperty" Property="RotateTransform.Angle" Value="{Binding ToolbarTrayElementRotation}" /> 
      <Setter Property="Margin" Value="2"/> 
</Style> 

エラーメッセージは次のとおりです: "LayoutTransformPropertyが認識されない"

<Separator> 
    <Separator.LayoutTransform> 
     <RotateTransform Angle="90" /> 
    </Separator.LayoutTransform> 
</Separator> 

ここでは、私がしようとしているものです。しかし、それはタブがそのエントリを完成するときにオプションとして利用可能です...奇妙です。

+0

'TargetName'は別の要素のプロパティを設定するためのものであり、で識別その名前。エラーは ''がウィンドウ/ UserControlのどこにもないことを伝えています。 –

+0

これは意味があります。しかし、実際にこれを正しく行う方法の問題には、実際には答えません。何か案は? –

答えて

3

あなたはRotateTransformのインスタンスにLayoutTransformプロパティを設定する必要があります。

<Style x:Key="CustomStandaloneSeparatorStyle" TargetType="Separator"> 
    <Setter Property="LayoutTransform"> 
     <Setter.Value> 
      <RotateTransform Angle="90" /> 
     </Setter.Value> 
    </Setter> 
</Style> 
+0

これはまさにAngle = "{ToolbarTrayElementRotationのバインディング}"以外のものです。ありがとうございました!私には数分で答えを受け入れるでしょう –

+0

元の "作業中の"コードでは、私はそれを私の答えに含めませんでした: –

+0

これらを静的または動的リソースとして参照する必要がありますか?どちらも正しいですか? –

1

プロパティがLayoutTransformと呼ばれている:

<Style x:Key="CustomStandaloneSeparatorStyle" TargetType="Separator"> 
    <Setter Property="LayoutTransform"> 
     <Setter.Value> 
      <RotateTransform Angle="{Binding ToolbarTrayElementRotation}" /> 
     </Setter.Value> 
    </Setter> 
    <Setter Property="Margin" Value="2"/> 
</Style> 
関連する問題