Вставить список в приложение RichEditBox для магазина Windows

Я разрабатываю текстовый редактор для приложения магазина Windows (WinRT) на основе элемента управления RichEditBox. RichEditBox использует ITextParagraphFormat для работы с абзацами и ListAlignment, ListLevelIndex и другие свойства для маркированных и нумерованных списков. Я не нашел образцов для вставки маркированных или нумерованных списков в RichEditBox. Как я могу добавить списки в RichEditBox, используя ITextParagraphFormat?

1 ответ

Решение

Вам необходимо установить свойство ITextParagraphFormat.ListType для ITextParagraphFormat. Для маркера установите для свойства ListType значение MarkerType.Bulletдля номера установите ListType в MarkerType.Arabic, Дополнительные типы, пожалуйста, обратитесь к перечислению MarkerType, чтобы выбрать другие типы списков, которые вы хотите.

Вот пример добавления маркера и номера в выбранный список абзацев в RichEditBox, который вы можете протестировать.

Код XAML

 <RichEditBox x:Name="Richbox"  Height="400" Margin="40" >          
 </RichEditBox>    
 <Button x:Name="BtnSetbullet" Content="set bullet  to richeditbox" Click="BtnSetbullet_Click"></Button>
 <Button x:Name="BtnSetNumber" Content="set number  to richeditbox" Click="BtnSetNumber_Click"></Button>

Код позади

 private void BtnSetbullet_Click(object sender, RoutedEventArgs e)
 {         
     Windows.UI.Text.ITextSelection selectedText = Richbox.Document.Selection;
     ITextParagraphFormat paragraphFormatting = selectedText.ParagraphFormat;

     paragraphFormatting.ListType = MarkerType.Bullet;          
     selectedText.ParagraphFormat = paragraphFormatting;

 } 
 private void BtnSetNumber_Click(object sender, RoutedEventArgs e)
 {
     Windows.UI.Text.ITextSelection selectedText = Richbox.Document.Selection;
     ITextParagraphFormat paragraphFormatting = selectedText.ParagraphFormat;      
     paragraphFormatting.ListType = MarkerType.Arabic; 
     selectedText.ParagraphFormat = paragraphFormatting;           
 }
Другие вопросы по тегам