在<ImageBrush/>
元素中,有AlignmentX
和AlignmentY
属性的值分别为 Left/Center/Right 和 Top/Center/Bottom。
我想要做的是设置我自己的值,例如,AlignmentX
作为一个值或另一个枚举,比如AlignmentX="HalfCenter"
whereHalfLeft
等于我自己的值(在中心和左之间的中间)。例如,如果我有这个:
<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
将OffsetY
an 设置ImageBrush
为它的 parent 内的一个位置Shape
。不过,我对 SL 文档关于我将如何做到这一点感到非常困惑(在 VB.NET 中几乎没有示例 - 但即使是 C# 也不是那么具有启发性)。
如果可能的话,我将如何开始呢?