Окно нужно разместить по центру родителя. Когда габариты окна известны или layout заранее задан — проблем нет.
Проблема если окно сначала появляется на экране в минимальном варианте ( размер надписи Ждите идет загрузка ) и показывается( оно размещается как и нужно по центру ) , затем подгружается layout и засовывается в окно, окно становится уже большего размера, но его центровка уже не соответствует , т.к. координаты left, top расчитывались для минимального размера. Онекно получается как бы смещенным.
Если менять left, top на новые после загрузки , получается неприятный эффект прыжка.
Собственно как хочется сделать — после загрузки layout засовывается , но размер окна не должен меняться, нужно расчитать новый размер.
Затем запустить анимацию по переходу из мелкого размера в настоящий с видимым layout-ом. С анимацией может еще и справлюсь, а вот расчитать размер окна с учетом будущего скрытого контента — не понятно как.
Здравствуйте, Аноним, Вы писали:
А>Окно нужно разместить по центру родителя. Когда габариты окна известны или layout заранее задан — проблем нет. А>Проблема если окно сначала появляется на экране в минимальном варианте ( размер надписи Ждите идет загрузка ) и показывается( оно размещается как и нужно по центру ) , затем подгружается layout и засовывается в окно, окно становится уже большего размера, но его центровка уже не соответствует , т.к. координаты left, top расчитывались для минимального размера. Онекно получается как бы смещенным. А>Если менять left, top на новые после загрузки , получается неприятный эффект прыжка. А>Собственно как хочется сделать — после загрузки layout засовывается , но размер окна не должен меняться, нужно расчитать новый размер. А>Затем запустить анимацию по переходу из мелкого размера в настоящий с видимым layout-ом. С анимацией может еще и справлюсь, а вот расчитать размер окна с учетом будущего скрытого контента — не понятно как.
Попробуйте у дочернего элемента окна вызвать метод Measure()
По идеи после вызова у данного элемента будет определено свойство DesiredSize