Shell StatusBar UserControl Communication - PullRequest
       0

Shell StatusBar UserControl Communication

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

У меня есть главное окно wpf в качестве оболочки приложения, содержащее строку состояния и элемент управления вкладками с двумя элементами вкладок. У меня также есть два пользовательских элемента управления и их объекты View Model, использующие MVVM. Я поместил каждый пользовательский элемент управления на элемент вкладки в оболочке приложения.

У меня вопрос, я хочу, чтобы пользовательские элементы управления обновляли строку состояния на главной оболочке. Как лучше всего справиться с этим?

Спасибо

Ответы [ 2 ]

0 голосов
/ 01 июля 2012

BXF (базовая структура XAML)

http://bxf.codeplex.com/

со страницы документации BXF:

В простейшем виде Bxf действует как маршрутизатор сообщений или запросов от код приложения для обработчика докладчика.

Идея состоит в том, что код вашего приложения, как правило, код вашей модели представления, Нужно сделать набор базовых вещей:

  1. Показать просмотры
  2. Элемент списка
  3. Показать информацию о состоянии
0 голосов
/ 16 марта 2011

У меня такой же вопрос. Я не знаю точно, каков наилучший способ сделать это, но это мое предположение:

Для меня класс приложения (я имею в виду его переопределение) не является подходящим местом для его размещения, потому что он слишком центральный. Статус за Окно (Диалог). Затем вы можете поместить его в модель окна, но это еще одна плохая идея (мое мнение), потому что вам придется изменить свою модель для чего-то очень виртуального (статус). Персонально, но я могу ошибаться, я решил объявить метод в родительском окне напрямую. Любая модель, если она есть, любого из моих компонентов, которые являются частью этого окна, может (желательно во время инициализации) попытаться найти метод (рефлексию) и назначить ему делегата. Всякий раз, когда вы хотите обновить статус, вы подтверждаете, что ваш делегат не является нулевым, и вызывайте его, если это не так. Делегат может быть что-то вроде: SetStatus (строка статуса). Он не идеален, но, похоже, уважает его высокую сплоченность и низкую связь ...

Надеюсь, это поможет. Eric

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...