Hej ,
Mam taki nie typowy problem. Posiadam w contextmenu -> menuitem binding (pod IsEnabled) flage, która jest pobierana z innego vm niż przypisany datacontext z contextmenu. Oczywiście używam ancestortype który ma wyszukać w datacontexcie tą flagę pod TreeView. Niestety po wywołaniu contextmenu nie chce mi wejść w tą flagę chyba, że w trakcie działania programu usunę i wpisze byle co w IsEnable -> akceptuje kod -> powrócę do tej samej wartości bindingu -> akceptuje kod i nagle z tym samym kodem odpala się breakpoint we fladze. Ktoś wie dlaczego to tak się zachowuje? Jakoś się odświeża contextmenu po wprowadzeniu tej zmiany?
XAML:
<MenuItem Command="{Binding ShowDependenciesCommand}"
Header="{x:Static r:Resources.ShowDependencies}"
IsEnabled="{Binding RelativeSource={RelativeSource FindAncestor, AncestorType={x:Type TreeView}},
Path=DataContext.IsSelectSingleItem}"/>
oraz flaga w vm:
public bool IsSelectSingleItem
{
get
{
return myList.Count == 1 ?
true : false;
}
}