Mam aplikację MVVM i chcę dodać ContextMenu.IsChecked Wiązanie nie działa w MenuItem w ContextMenu
dodałem ContextMenu do XAML i następnie ustawić elementy tak (tylko jedna pozycja, bo to nie ma znaczenia):
<MenuItem Header="{x:Static Monitor:MonitorResources.R0206_SaveLatestValueToDatabase}"
IsCheckable="true"
IsChecked="{Binding ElementName=root, Path=Model.SaveToDbOneChecked}"
IsEnabled="{Binding ElementName=root, Path=Model.SaveToDbOneEnabled}">
SaveToDbOneChecked i SaveToDbOneEnabled są właściwości w moim modelu, które są realizowane w jak to:
private bool mSaveToDbOneEnabled;
public bool SaveToDbOneChecked
{
get { return mSaveToDbOneChecked; }
set { mSaveToDbOneChecked = value; OnPropertyChanged("SaveToDbOneChecked"); }
}
ustawić je przed ContextMenu jest wywoływana na SelectionChanged w GridView ContextMenu jest w Ale to nie pokaże sprawdzone znak obok tekstu MenuItem chociaż SaveToDbOneChecked został ustawiony. prawda! Nie wiem, gdzie coś robię źle i mam nadzieję, że ktoś mi pomoże.
uruchomić aplikację w debugowania i sprawdzić pod kątem wiązania Błędy w oknie wyjściowym. –
Tak, istnieje kilka: Nie można znaleźć źródła dla wiązania z odniesieniem 'ElementName = root'. BindingExpression: Path = Model.SaveToDbOneChecked; DataItem = null; elementem docelowym jest 'MenuItem' (Name = ''); Właściwość target jest "IsEnabled" (typ "Boolean") jaki jest mój problem z powiązaniem? o_O – Kazoooka