У меня есть WPF RichTextBox в моем приложении, которое находится в Grid. Он обновляется каждый второй или второй, поскольку он отображает журналы (хотя иногда нет журналов в течение минуты в зависимости от нагрузки).RichTextBox прокрутка до конца не работает, когда не отображается
Сетка не всегда видна, так как она находится на собственной вкладке. Если пользователь находится на другой вкладке, журнал не отображается.
Моя проблема в том, что я хочу, чтобы RichTextBox прокручивался до конца каждый раз при добавлении нового абзаца. Это казалось простым, поскольку в элементе управления RichTextBox есть метод ScrollToEnd, и поэтому я вызываю этот метод каждый раз, когда текст добавляется в элемент управления.
Проблема заключается в том, что этот метод работает только в том случае, если элемент управления виден, если пользователь находится на другой вкладке, RichTextBox не будет прокручиваться до конца и выглядит странно, когда вы нажимаете на вкладку с помощью регистратора и после пару секунд или дольше он прокручивается на дно, когда он уже должен быть внизу.
Есть ли способ вокруг этой досадной «функции» управления? Я хотел бы ВСЕГДА иметь RichTextBox в нижней части, если пользователь не будет вручную управлять полосой прокрутки.
Спасибо!
Это прекрасно исправило мою проблему, теперь, когда я подключился к загруженному событию, все идеально! Я не могу поверить, что я никогда не думал об этом, я предполагал, что он меняет видимость, а не удаляется и снова добавляется. Награда за награду. –
Это довольно противоречиво и не очень хорошо документировано: P Мы также обнаружили сложный путь, после многих проб и ошибок и, наконец, прибег к Snoop, чтобы проверить визуальное дерево. Выяснили, что каждый раз визуализируется только содержимое одного TabItem! (спасибо за щедрость :) – almulo