Интерпретация свойств зависимостей WPF как набора - PullRequest
2 голосов
/ 09 апреля 2010

Итак, у меня есть контроль. Он отображает изображение на основе некоторого XML-документа и необязательного параметра

  • «Документ» - XML-документ
  • «RenderingOption» - дополнительный рендеринг изображений (резкость, смягчение)

Итак:

<XMLRenderingWidget Document="xxxxxx"/>

Выше будет отображать документ один раз

<XMLRenderingWidget Document="xxxxxx" RenderingOption="Sharpen"/>

Вышеприведенное будет иногда отображать документ один раз, чаще:

  • Выполнять рендеринг документа, как будто Рендеринг не был установлен
  • затем повторно отрендерните документ с параметром «Резкость»

Я выполняю рендеринг в PropertyChangedCallback, назначенном для свойства. Как мне сказать элементу управления: «Эй, перед рендерингом примените изменения и к другим установленным свойствам»

Разве это не возможно? Должен ли я связать их как одно свойство вместо?

1 Ответ

1 голос
/ 09 апреля 2010

Попробуйте отложить выполнение с помощью

Dispatcher.BeginInvoke(new Action(DoRender), DispatcherPriority.ContextIdle);

Диспетчер завершит обновление свойств перед выполнением вашего действия.

...