private static object CoerceCrumbs(DependencyObject d, object value) { ExperimentBreadcrumb control = (ExperimentBreadcrumb)d; if (control.Gatherer != null) { return(control.Gatherer.GatherCrumbs(control.Source)); } return(null); }
private static void OnCrumbsChanged(DependencyObject sender, DependencyPropertyChangedEventArgs args) { ExperimentBreadcrumb control = (ExperimentBreadcrumb)sender; if (control.Crumbs != null && control.Crumbs.Length > 0) { control.Crumbs[control.Crumbs.Length - 1].IsCurrent = true; foreach (Crumb crumb in control.Crumbs) { crumb.IsNested = true; } control.Crumbs[0].IsNested = false; } }
private static void OnGathererChanged(DependencyObject sender, DependencyPropertyChangedEventArgs args) { ExperimentBreadcrumb control = (ExperimentBreadcrumb)sender; control.CoerceValue(CrumbsProperty); }