3

为 Windows Phone 编写应用程序,我想创建自定义控件,继承自TextBlock. 但是这个控件的形式不应该是矩形。我尝试使用 Blend 来完成这项任务,但我找不到更改控件形式的属性。

理想的自定义控件形式

上图是控制的示意图。我想,有可能设置控制角度的坐标,但我没有找到。谢谢你。

4

1 回答 1

2

这个问题可以通过多种方式解决,我选择用一个Template跟自己的数字。在角色中的人物会表演标准RectanglesTextBlock无法设置模板,所以我选择了更通用的控件 - Label.

例子:

<Style TargetType="{x:Type Label}">
    <Setter Property="Template">
        <Setter.Value>
            <ControlTemplate TargetType="{x:Type Label}">
                <Border Background="{TemplateBinding Background}">
                    <Grid>
                        <Rectangle Width="30" Height="70" Fill="Gainsboro" StrokeThickness="1" Margin="0,0,0,10" Panel.ZIndex="0" />
                        <ContentPresenter HorizontalAlignment="Left" VerticalAlignment="Bottom" Margin="33,0,0,25" Panel.ZIndex="1" />
                        <Rectangle MinWidth="55" Height="30" StrokeThickness="1" Fill="Gainsboro" HorizontalAlignment="Left" Margin="30,30,0,0" />
                    </Grid>
                </Border>
            </ControlTemplate>
        </Setter.Value>
    </Setter>
</Style>

Label在 XAML 中声明:

<Label Background="Transparent" Width="200" Height="90" Content="Test your label" />

Output

在此处输入图像描述

自然,您将需要更改Template以适应您的需求。

Note about several ways

于 2013-07-12T22:49:53.593 回答