Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何用句点填充文本块(Silverlight 5)_Silverlight_Textblock_Fill_Period_Drawingbrush - Fatal编程技术网

如何用句点填充文本块(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>