Хорошая идея разрешить XAML в Silverlight 4 с помощью контейнера WIndsor?

В настоящее время я разрешаю xamls из контейнера, чтобы мне было проще и элегантнее использовать внедрение зависимостей. Это веб-приложение, написанное на Silverlight 4 с контейнером Виндзорского замка. У меня есть офисная лента 2007 года, и при щелчке элемента меню элемент управления содержимым под лентой заменяется соответствующим xaml.

Но стоит ли разрешать xaml из контейнера? Меня беспокоит проблема с производительностью.

Может кто-нибудь показать мне, как правильно делать мастер-страницы, как в ASP.NET? Я хотел бы разрешить xaml только при нажатии элемента меню. Как я могу это сделать? В настоящее время я разрешаю каждый XAML из конструктора до того, как будет нажато меню! Так очень неэффективно!

Любые лучшие предложения?


person ove    schedule 26.11.2010    source источник


Ответы (1)


Это не сложно, но для меня это несколько недоработанный, даже странный вопрос.

Что вы подразумеваете под «разрешением XAML с помощью Windsor»? Я не знаю ни одного контейнера IoC, способного интегрировать XAML любого рода.

Однако, если все, что вам нужно сделать, это иметь какую-то концепцию, подобную эталонной странице в Silverlight, у вас есть несколько вариантов:

  1. Используйте Prism и их концепцию региона.
  2. Используйте другую библиотеку MVVM и ее эквивалент для региона (Caliburn отлично подходит), но обратите внимание, что в конечном итоге это сводится к замена «заполнителей», которые являются ContentControls
  3. Сделайте то же самое, что и (2), используйте ContentControls и замените их содержимое вручную (вероятно, то, что вы делаете сейчас, я полагаю)

Если бы вы предоставили больше информации с более конкретным запросом, мы могли бы помочь вам больше.

person rawpower    schedule 30.11.2010
comment
Версия Windsor silverlight в настоящее время позволяет внедрять XAML. Таким образом, можно разрешить xaml из других классов. Не уверен, что возникнут какие-либо проблемы с эффективностью. - person ove; 30.11.2010