Как сделать пунктирную границу на элементе Границы в Silverlight?

Как я могу сделать нижнюю границу этой Границы элементом Silverlight, красный отметил точкой в красной сплошной линии?

Border border = new Border();
border.CornerRadius = new CornerRadius(5);
border.BorderThickness = new Thickness(0, 0, 0, 1);
border.BorderBrush = new SolidColorBrush(Colors.Red);
7
задан Drew Noakes 28 October 2012 в 18:18
поделиться

1 ответ

Можете ли вы заменить границу сеткой и дать ей прямоугольник, заполняющий всю область?

<Rectangle Stretch="Fill" RadiusX="10" RadiusY="10" StrokeDashArray="10, 2" Stroke="Black" Fill="White" />

StrokeDashArray можно использовать для рисования пунктирной линией, но граница не имеет такого свойства.

РЕДАКТИРОВАТЬ:

Поскольку я заметил, что вы наносите точки только на нижнюю границу, вы можете сделать что-то вроде этого

<Border Width="100" Height="100" Background="Blue" BorderThickness="0,0,0,1">
    <Border.BorderBrush>
        <LinearGradientBrush StartPoint="0,0" EndPoint=".2,0" SpreadMethod="Repeat" >
            <GradientStopCollection>
                <GradientStop Color="Transparent" Offset="0" />
                <GradientStop Color="Transparent" Offset="0.3" />
                <GradientStop Color="Red" Offset="0.3" />
                <GradientStop Color="Red" Offset="0.6" />
                <GradientStop Color="Transparent" Offset="0.6" />
                <GradientStop Color="Transparent" Offset="1" />
            </GradientStopCollection>
        </LinearGradientBrush>
    </Border.BorderBrush>
</Border>

Отрегулируйте Смещение двух средних GradientStop, чтобы настроить ширину красной точки / бросаться. Вам также может потребоваться настроить конечную точку, чтобы она повторялась с желаемым интервалом.

12
ответ дан 6 December 2019 в 10:47
поделиться
Другие вопросы по тегам:

Похожие вопросы: