0

ListBox ItemTemplateで、TextBlockUnderLineを設定したいと思います。フローとして:

    <StackPanel x:Name="TaskContent_SP"  Orientation="Horizontal" Background="#16191B" Height="80"  Width="455" >
                                    <Grid x:Name="DonePreDragCoreItem_GD" >
                                        <TextBlock x:Name="TaskNameItem_TB"  Canvas.ZIndex="0"   Text="{Binding TaskName}" Margin="10,10,10,10"   HorizontalAlignment="Left" Foreground="#414444" FontWeight="ExtraLight"  FontSize="30"></TextBlock>
                                        <Line x:Name="DoneForgroundLine_LE" Stroke="#414444" StrokeThickness="4" 
                                              X1="0" X2="{Binding ElementName=TaskNameItem_TB,Path=ActualWidth}"                                              
                                              Canvas.ZIndex="1" Margin="10,33,10,10"></Line>
                                    </Grid>
                                </StackPanel>

データバインディングを使用しない場合は、Textblockテキスト値を設定します。ActualWidthは通常の値です。それ以外の場合は、0のままです。

日付バインド時にActualWidth値を取得する方法は?

4

1 に答える 1

1

ActualWidth は DependencyProperty ではないため、バインディングで取得できません。Border を使用して、下部に線を引くことができます

<Border BorderThickness="0,0,0,1" BorderBrush="Black">
    <TextBlock x:Name="TaskNameItem_TB" Text="{Binding TaskName}" Margin="10,10,10,10"   HorizontalAlignment="Left" Foreground="#414444" FontWeight="ExtraLight" FontSize="30"/>
</Border>
于 2012-08-07T06:34:12.417 に答える