6

XAMLで(背後にC#コードなしで)線を作成して、グリッドなどのレイアウトコンテナー内で線を整列させることは可能ですか?

私は効果的に持っていたい:

<Grid>
    <Line StrokeThickness="1" 
          HorizontalAlignment="Stretch" 
          VerticalAlignment="Bottom" 
          Stroke="Red"/>
</Grid>

StrokeDashArrayとを使用する必要がありますStrokeDashOffset。そうでない場合はBorder、BorderThicknessを"0,0,0,1"...に設定したコントロールを使用します。

アイデアをありがとう!

4

3 に答える 3

10

kanchirkの応答について詳しく説明すると、これは私にとってはうまくいきます。

<Path StrokeThickness="1"
 HorizontalAlignment="Stretch"  
 VerticalAlignment="Bottom"
 Data="M0,0 L1,0"
 Stretch="Fill"
 StrokeEndLineCap="Square"
 StrokeStartLineCap="Square"
 Stroke="Red"/> 

:で同じことをすることもできLineます

<Line StrokeThickness="1" 
 HorizontalAlignment="Stretch"   
 VerticalAlignment="Bottom" 
 X2="1" 
 Stretch="Fill" 
 StrokeEndLineCap="Square" 
 StrokeStartLineCap="Square" 
 Stroke="Red"/>
于 2010-03-12T05:41:31.487 に答える
1

このようなパスを使用する必要があると思います

<Grid x:Name="LayoutRoot" Background="White">

<Path Fill="Red" Stretch="Fill" Stroke="Black" StrokeDashArray="1" Height="4" Margin="8,0,7,7" VerticalAlignment="Bottom" UseLayoutRounding="False" Data="M8,127 L457,127" StrokeThickness="13"/>

</Grid>

お役に立てれば。Expression Blendは、この種のチャレンジ、さらにはVS 2010 RC1(今のところ)には必須です。

于 2010-03-12T05:18:48.280 に答える
1

これはどう?

<Line x:Name="line" 
StrokeThickness="1"  
HorizontalAlignment="Stretch"  
VerticalAlignment="Bottom"  
Stroke="Red" 
X2="{Binding ActualWidth, ElementName=line, Mode=OneWay}"
Stretch="Fill" 
StrokeStartLineCap="Square"
StrokeEndLineCap="Square"/> 
于 2010-03-12T05:27:18.740 に答える