Во-первых, несколько вопросов относительно привязки данных:
- Является ли DataContext по умолчанию для элемента управления, установленного в коде позади?Например, если у меня есть переменная
orderNumber
в test.xaml.cs, могу ли я просто сослаться на нее так же, как в xaml {Binding orderNumber}
? - Правильно ли, что я могу только привязать данные к свойствамobject?
У меня есть служба Prism в отдельном модуле / сборке, которую я импортирую в приложение Shell через MEF.Я пытаюсь привязать данные к ней, но она не работает.
Мой обходной путь ниже. В моем Shell.xaml.cs:
[Import(AllowRecomposition = false)]
private IRibbonService _menuService;
public IRibbonService MenuService
{
get
{
return _menuService;
}
}
public void OnImportsSatisfied()
{
Debug.WriteLine("Imports satisfied", "Prism");
this._moduleManager.LoadModuleCompleted += new EventHandler<LoadModuleCompletedEventArgs>(moduleManager_LoadModuleCompleted);
//TODO figure out how to properly bind to the ribbon
Ribbon.DataContext = _menuService;
RibbonAppMenu.DataContext = _menuService.ApplicationMenuData;
}
Есть ли способ установить текст данных в xaml до того, как будет установлен объект, особенно в отношении сценария MEF / Prism?На своем объекте ленты я попытался DataContext="{Binding MenuService}"
, но это не сработало.