powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поведение RichTextBox в WIN 10
12 сообщений из 12, страница 1 из 1
Поведение RichTextBox в WIN 10
    #39825545
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте, уважаемые!
Очень нужна помощь, сам пока в растерянности. Есть программка, довольно давно написанная. В ней на форме лежит Panel, в неё добавляются UserControl вертикально, друг под другом. в этих контролах находятся RichTextBox с небольшим количеством текста. RichTextBox без полос прокрутки, т.к. их размер подгоняется под текст. Когда UserControl на панели становится много - появляется вертикальный скролл панели и колёсиком всё прекрасно прокручивается. Прекрасно - это в win XP, WIN 7 и всех версиях WIN SERVER с 2008 по 2012 R2. А вот внезапно оказалось, что в WIN 10 (и WIN SERVER 2016) при попадании указателя мышки на RichTextBox скролл панели не работает! что бы пролистать её дальше - необходимо увести мышь на любой другой элемент.
Т.е. я так понимаю что пытается работать прокрутка RichTextBox. Событие перехватывается только им и не доходит до панели?
Если RichTextBox.Enable = false , то этой фигни не наблюдается - пролистывается панель. Проблема в том что RichTextBox имеет разный цвет фона, в зависимости от содержимого. а при Enable = false фон просто серый, беда.
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826107
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andry_Палыч,

RichTextBox используется только для отображения информации?
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826137
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
скорее всего после фокусировки объект захватывает мышку, попробуйте переопределить методы связанные с фокусом и кликами мышки или принудительно освободите мышку
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826233
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pation, да, он в readonly. Используется именно он из-за возможности визуального выделения разных блоков текста (шрифт и цвет)
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826241
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,
по получению фокуса уже стоит вызов функции фокусировки другого контрола (controlName.Focus()). а принудительно мышку освободить - это как? :)
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826246
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да и нет тут получения фокуса. Мышкой не щёлкается по RichTextBox-у, достаточно навести курсор и всё - прокрутка панели блокируется (((
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826332
Фотография Cat2
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Модератор форума
Andry_Палыча при Enable = false фон просто серый, беда.
Почему такой косяк не знаю, но попробуйте дать richTextBox.Readonly=true
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39826550
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Cat2, он уже и так Readonly=true :)
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39827312
Фотография pation
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Andry_Палычpation, да, он в readonly. Используется именно он из-за возможности визуального выделения разных блоков текста (шрифт и цвет)
я бы посоветовал для этих целей использовать не RichTextBox, а WebBrowser
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39827336
Roman Mejtes
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
https://docs.microsoft.com/ru-ru/dotnet/framework/winforms/mouse-capture-in-windows-forms
Если RichTextBox захватывает мышку, то все события мышки будет обрабатывать именно этот элемент управления, где бы мышка не находилась.
Если какой то другой объект захватит мышку, то все события будет обрабатывать он, а другие элементы управления идут лесом.
Если RichTextBox не реагирует на мышку, значит кто то эту мышку захватил и удерживает, не давая другим элементам управления обрабатывать связанные с ней события.
я не особо работаю с WinForms, но этому на практике подскажу едва ли, может и не в этом дело вовсе, но проверить стоит.

в WPF можно захватом управлять как в рамках класса Control.CaptureMouse(), так и с помощью менеджера мышки Mouse.Capture() и т.д. как с этим дела обстоят в WinForms не имею понятия
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39827945
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Roman Mejtes,
спасибо за предложенную идею, но увы "В Windows Forms имеет захват мыши элементом управления при нажатии кнопки мыши на элемент управления, и который мышь выпускается элементом управления, когда пользователь отпускает кнопку мыши."
MouseCaptureChanged() срабатывает только на щелчки любыми кнопками. Прокрутка колеса его не интересует ))))
...
Рейтинг: 0 / 0
Поведение RichTextBox в WIN 10
    #39827946
Andry_Палыч
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
pation, спасибо, попробую
...
Рейтинг: 0 / 0
12 сообщений из 12, страница 1 из 1
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Поведение RichTextBox в WIN 10
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]