2016-04-22 2 views
0

Это должно быть похоже, например, на изображении enter image description hereWPF автозаполнения TextBlock с многоточием внутри ListView

У меня есть представление списка персонализированных DataTemplate. Я должен автозаполнять все свободное пространство с эллипсисом в DescriptionTextBlock.

Вы хоть представляете, как я могу это сделать?

<ListView ItemsSource="{Binding Items}" HorizontalAlignment="Stretch"> 
    <ListBox.ItemContainerStyle> 
     <Style TargetType="ListBoxItem"> 
      <Setter Property="HorizontalContentAlignment" Value="Stretch"></Setter> 
     </Style> 
    </ListBox.ItemContainerStyle> 
    <ListView.ItemTemplate> 
     <DataTemplate> 
      <Grid> 
       <Grid.ColumnDefinitions> 
        <ColumnDefinition Width="20" /> 
        <ColumnDefinition Width="*" /> 
        <ColumnDefinition Width="20" /> 
       </Grid.ColumnDefinitions> 
       <Image Grid.Column="0" Width="16" Height="16" Source="{Binding Type, Converter={StaticResource NodeIconConverter}}" /> 
       <TextBlock Grid.Column="1" Text="{Binding Tittle}" ToolTip="{Binding Description}" /> 
       <Image Grid.Column="2" Width="16" Height="16" Source="{Binding Status, Converter={StaticResource NodeStatusConverter}}" /> 
      </Grid> 
     </DataTemplate> 
    </ListView.ItemTemplate> 
</ListView> 

ответ

2

Вы можете обновить DataTemplate, как показано ниже, чтобы пунктирная линия между пространством:

<DataTemplate> 
     <Grid> 
      <Grid.ColumnDefinitions> 
       <ColumnDefinition Width="20" /> 
       <ColumnDefinition Width="Auto" /> 
       <ColumnDefinition Width="*"/> 
       <ColumnDefinition Width="20" /> 
      </Grid.ColumnDefinitions> 
      <Image Grid.Column="0" Width="16" Height="16" Source="{Binding Type, Converter={StaticResource NodeIconConverter}}" /> 
      <TextBlock Grid.Column="1" Text="{Binding Tittle}" ToolTip="{Binding Description}" /> 
      <Rectangle Grid.Column="2" Margin="2,5,2,0" Stroke="#FF000000" Height="1" StrokeThickness="1" StrokeDashArray="1 4" 
                SnapsToDevicePixels="True"/> 
      <Image Grid.Column="3" Width="16" Height="16" Source="{Binding Status, Converter={StaticResource NodeStatusConverter}}" /> 
     </Grid> 
    </DataTemplate> 
Смежные вопросы