Почему OnLoad () вызывается дважды, когда предопределенное событие Load выполняется один раз, когда Do RightToLeft? - PullRequest
0 голосов
/ 11 ноября 2019

Что-то очень странное, когда я ищу в сообществе . люди всегда говорили переопределить метод OnLoad(), потому что он создал дескрипторы и так далее. не предопределенное событие Load

Но при выполнении RightToLeft OnLoad() вызывается дважды, в отличие от Load события, которое вызывается только один раз.



Отредактировано

DmitryG хорошо объясняет это в своем ответе ниже.

Ответы [ 2 ]

1 голос
/ 11 ноября 2019

С Как: включить режим RTL в приложении культуры справа налево :

Во время выполнения избегайте изменения свойства RightToLeft или RightToLeftLayout во время выполнения для формы, которые уже отображаются .

Как правило, расположение справа налево - это не просто flipping a screen, но это значительное изменение, которое влияет на расположение элементов управления, их текстов, изображения и другие культурно-специфические свойства и даже больше. Таким образом, обрабатывает воссоздание и затем перезагрузку элемента управления может быть ожидаемым поведением в этой ситуации.

В любом случае, я предлагаю вам обратиться в службу поддержки DevExpress по этому поводу.

PS. Наиболее подходящий способ изменить режим «справа налево» в этой ситуации - перезапустить приложение с обновленными культурными настройками. Взгляните на Application.Restart в качестве возможного способа решения этой задачи.

Как: включить режим RTL для элементов управления формы, строк и изображений в приложении для нескольких культур

0 голосов
/ 11 ноября 2019

вы можете попробовать использовать onrendered (), он вызывается только один раз и когда форма полностью загружена.

...