如何用句点填充文本块(Silverlight 5)
我有一个网格和三列。代码如下:如何用句点填充文本块(Silverlight 5),silverlight,textblock,fill,period,drawingbrush,Silverlight,Textblock,Fill,Period,Drawingbrush,我有一个网格和三列。代码如下: <Grid x:Name="StaticGrid" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" Width="450" Margin="3"> <Grid.ColumnDefinitions> <ColumnDefinition Width="Auto" />
<Grid x:Name="StaticGrid"
HorizontalAlignment="Stretch"
VerticalAlignment="Stretch"
Width="450"
Margin="3">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto" />
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{TemplateBinding Description}"
Grid.Column="0"
Height="30"
HorizontalAlignment="Left"/>
<TextBlock Text="......................................................................................................"
Grid.Column="1"/>
<TextBlock Text="{TemplateBinding ParamValue}"
Grid.Column="2"
Height="30"
HorizontalAlignment="Right"/>
</Grid>
因此,如果我的网格大小固定,那么这个解决方案是可以的,但是如果它是动态变化的,那么我不知道如何动态地改变周期。我读过这篇文章,但是Bob Bao给出的解决方案在Silverlight中不起作用(我的意思是不支持DrawingBrush对象)。
我还读过一篇帖子,其中塔米尔·卡森提供克隆
WPF
对象,以便在Silverlight
中使用它。我不想使用如此复杂的解决方案。有谁有更好的解决方案吗?您可以使用路径并使用如下属性:
<Grid Height="100" Width="100">
<Path Data="M5,1 L1,1"
Height="1"
Stretch="UniformToFill"
Stroke="Black"
StrokeThickness="2"
VerticalAlignment="Top"
StrokeDashArray="1 1"/>
</Grid>
这是一个很好的解决方案,但不同的空间填充方式不同。你会明白我说的话,如果你看一下,这里我首先提供的代码是什么样子的:我必须用边距纠正位置,但这是一个解决方案,谢谢!
<Grid Height="100" Width="100">
<Rectangle Height="2">
<Rectangle.Fill>
<LinearGradientBrush
EndPoint="0,0"
StartPoint="3,0"
MappingMode="Absolute"
SpreadMethod="Repeat">
<GradientStop Color="Black" Offset="0.5"/>
<GradientStop Offset="0.5"/>
</LinearGradientBrush>
</Rectangle.Fill>
</Rectangle>
</Grid>