protected override void OnDataContextChanged(FrameworkElement element, object dataContext) { IDefinition definition = null; if (dataContext != null) { var manager = element.FindSettingsManager(); var id = PropertyWalker.GetDefinitionId(dataContext, Path); definition = manager.GetDefinition(id); } ((IHaveSettings)element).Settings = definition; }
protected override bool OnResolvableDataContextChanged(ContentControl element, object dataContext) { if (dataContext == null) { element.Content = ""; return(false); } var manager = element.FindSettingsManager(); var id = PropertyWalker.GetDefinitionId(dataContext, Path); var definition = manager.GetDefinition(id); var label = definition.Label; if (_appendColon) { label += ":"; } element.Content = label; return(true); }