| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Разработка Windows Forms > Заставить перерисоваться детей |
| Автор: cupper 22.6.2011, 15:04 | ||||
Есть базовая абстрактная форма. На ней находит RichBox, с выставленны свойствами Anchor
Есть форма, которая наследует этот класс. В ней мне нужно изменить размеры базовой формы
размер формы изменяется, но вот RichBox не растягивается при этом. Не знаю как решить эту проблему. Напрашивается что я должен как то вызвать событие о том что изменился размер окна и нужно перерисовать всех его детей, но какой событие вызвать и какие параметры ему передать я не могу найти. |
| Автор: -Mikle- 22.6.2011, 16:02 |
| А зачем this.ClientSize? this.Size не помогает? |
| Автор: cupper 22.6.2011, 16:43 | ||
никакой разницы нет. И так и так пробовал. и через this и через base. Invalidate тоже вызывал. |
| Автор: cupper 23.6.2011, 08:14 |
| Возможно так просто нельзя делать. Тогда как можно реализовать следующее: Есть базовая форма, на ней richbox с выставленными anchor (лева, право, топ). Далее я наследуюсь от этой формы, но каждый наследник должен иметь свой. Перерасчитывать координаты и размеры всех элементы базовой формы в ручную, совсем не хочется. |
| Автор: -Mikle- 24.6.2011, 13:03 |
| Что-то не пойму в чем проблема или что нужно. Вот сделал базовую форму, наследовался от нее. Ничего вручную не делал. Анчоры установленные в базовой форме работают сами по себе как и ожидалось. Зачем нужно что-то вручную менять? |
| Автор: cupper 27.6.2011, 09:05 | ||||||
Вы меня не поняли. У меня есть базовая форма, 200 на 200, на ней какой то элемент с выставленными свойствами
далее мне нужно создать две другие формы, с немного разным содержанием. Я наследуюсь от этой, с так как количество элементов в каждом ребенке будет разное, то и размеры форм соответственно будут разные, и мне приходится изменять размер базовой формы. Я вот когда я изменяю размер наследника на другой
у меня rbxMessage остается прежних размеров и не растягивается. |
| Автор: cupper 27.6.2011, 09:38 |
| PS. короче я переопределил у базовой формы OnResize и в ручную пересчитываю размеры и координаты всех элементов, и теперь работает независимо от того кто меняет размер формы, человек или код. |