<ImageBrush/>
要素には、値がそれぞれ Left/Center/Right および Top/Center/Bottom のAlignmentX
および属性があります。AlignmentY
私がやりたいことは、たとえば、AlignmentX
値として、または自分の値と等しいAlignmentX="HalfCenter"
場所のような別の列挙として、自分の値を設定することHalfLeft
です (中央と左の中間)。たとえば、これがある場合:
<Rectangle Canvas.Left="0" Stroke="LimeGreen" StrokeThickness="16" Canvas.Top="0"
Width="400" Height="400" >
<Rectangle.Fill>
<ImageBrush ImageSource="newone.jpg"
Stretch="None" AlignmentX="HalfLeft" AlignmentY="Top" />
</Rectangle.Fill>
</Rectangle>
これが依存関係プロパティなのか、添付プロパティなのか、それ以外なのかはわかりません (それらの作成方法はまだわかりません)。ヘルプファイルでは、TileBrush.AlignmentXProperty
フィールドに次のように記載されていますPublic Shared ReadOnly AlignmentXProperty As DependencyProperty
。ここでのReadOnlyという言葉は、このプロパティをカスタム プロパティに設定できないという意味ですか?
これがそのプロパティのオーバーライドできない場合、どうすれば独自のプロパティを作成できますか? これは添付プロパティだと思います。たとえば、 をその親内の場所に設定するなどOffsetX
、別のものと呼ぶことができます。ただし、これをどのように行うかについてSLのドキュメントで非常に混乱しています(VB.NETの例はほとんどありませんが、C#の例でさえ、それほど明らかではありません)。OffsetY
ImageBrush
Shape
可能であれば、どうすればこれを開始できますか?