Исключение нулевого указателя генерируется, когда приложение пытается использовать null в случае, когда требуется объект. К ним относятся:
null
. null
. null
, как если бы это был массив. null
, как если бы это был массив. null
как будто это было значение Throwable. Приложения должны бросать экземпляры этого класса, чтобы указать на другие незаконные использования объекта null
.
Ссылка: http://docs.oracle.com/javase/8/docs/api/java/lang/NullPointerException.html
<TextBox Background="Transparent"
BorderThickness="0"
Text="{Binding Text, Mode=OneWay}"
IsReadOnly="True"
TextWrapping="Wrap" />
Я не уверен, можно ли сделать TextBlock можно выбрать, но другая опция состояла бы в том, чтобы использовать RichTextBox - она похожа на TextBox, как Вы предположили, но поддерживаете форматирование, Вы хотите.
Создайте ControlTemplate для TextBlock и вставьте TextBox с набором свойств только для чтения. Или просто используйте TextBox и сделайте его только для чтения, тогда можно изменить TextBox. Стиль для создания это похоже на TextBlock.
Существует альтернативное решение, которое можно адаптировать к RichTextBox, описанному в этой записи блога - в нем использовался триггер для замены шаблона элемента управления при наведении курсора на элемент управления - должно помочь с производительностью