C# UWP - неверный размер каретки, когда нет текста - PullRequest
0 голосов
/ 04 мая 2020

У меня есть RichEditBox и я хочу изменить размер шрифта выделения. Когда я ничего не выбираю, а затем изменяю размер шрифта, размер каретки не увеличивается, пока я не начну вводить некоторые символы (пробелы не работают). Когда я удаляю все эти символы, каретка снова сжимается, пока я не наберу некоторые символы. Есть ли возможность сразу изменить размер каретки, как в таких программах, как Word?

ITextSelection selection = Editor.Document.Selection;
if(selection != null) {
    float fontSize;
    try {
        fontSize = (float) Convert.ToDouble(fontSizeBox.Text);
    } catch(FormatException) {
        fontSize = 11;
    }
    selection.CharacterFormat.Size = fontSize;
}
Editor.Focus(FocusState.Programmatic);

1 Ответ

1 голос
/ 05 мая 2020

Вы можете сделать это с помощью трюка, используя PlaceholderText

<RichEditBox PlaceholderText="Input your text" FontSize="52"/>

Обновление:

Что ж, я добавил несколько скриншотов и провел тест. Каретка немного уменьшилась при вводе новой строки. И оно становится больше, когда RichEditBox изменяется с текста держателя на ваш собственный текст.

Это действительно интересно. Я думаю, что это, возможно, ошибка, созданная Microsoft.

По умолчанию: enter image description here Первая строка enter image description here Введите новую строку enter image description here

...