2009-01-31 9 views
1

Comment puis-je souligner un ListBoxItem dans WPF? J'utilise ce qui suit, mais le soulignement n'apparaît pas.Comment puis-je souligner un ListBoxItem dans WPF?

<DataTemplate x:Key="Phrase_List"> 
    <ListBoxItem IsSelected="{Binding IsDefault}"> 
     <TextBlock Text="{Binding Path=Phrase}" Tag="{Binding Path=ID}" TextDecorations="Underline" /> 
    </ListBoxItem> 
</DataTemplate> 

Répondre

1

Je ne sais pas quel code vous essayez d'utiliser. S'il vous plaît, essayez de compléter votre question. J'ai utilisé le code suivant pour souligner l'élément 'World' dans mon petit ListBox.

<ListBox> 
     <ListBoxItem>Hello</ListBoxItem> 
     <ListBoxItem> 
      <Underline>World</Underline> 
     </ListBoxItem> 
    </ListBox> 
0

Vous pouvez utiliser un bloc de texte et définir la propriété textdecorations à souligner. Souvenez-vous que le contenu d'un ListBoxItem peut être autre chose que du texte, c'est pourquoi il n'est pas simple de définir une propriété sur ListBoxItem.

0

Vous devrez créer un modèle d'élément qui affiche votre texte dans un contrôle TextBlock. Sur le TextBlock, définissez la propriété TextDecorations (qui est une collection) pour contenir "Souligné".

0

En XAML:

<ListBox Name="lst"> 
     <ListBoxItem Content="item1" /> 
     <ListBoxItem Content="item2" FontStyle="Italic" FontWeight="Normal" /> 
</ListBox> 

En C#:

lst.Items.Clear(); 
lst.Items.Add(new ListBoxItem { Content = "item 1" }); 
lst.Items.Add(new ListBoxItem { Content = "item 2" }); 
lst.Items.Add(new ListBoxItem { Content = "item 3" }); 

ListBoxItem l = (ListBoxItem)lstItems.Items[2]; 
li.SetValue(TextElement.FontStyleProperty, FontStyles.Italic); 
Questions connexes