2012-08-07 48 views
0

在我的ListBox ItemTemplate我想設置TextBlock UnderLine。 爲fllow:如何在使用DataBinding時設置Line X Value?

<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> 

如果我不使用數據綁定設置文本塊文本值。 ActualWidth有正常值,否則它仍然是0.

如何獲取ActualWidth值時datebinding?

回答

1

由於不是DependencyProperty,因此無法獲得綁定中的ActualWidth。您可以通過使用邊框在底部獲得一條線

<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> 
+0

謝謝。它會變成工作。 – 2012-08-07 06:48:21

相關問題