private void OnTypeRequested(object sender, TypeRequestedEventArgs e) { var vsender = (ObjectPropertyViewModel)sender; var panel = this.FindPropertiesHost(); ITypeInfo type = TypeSelectorWindow.RequestType(panel, vsender.AssignableTypes); e.SelectedType = Task.FromResult(type); }
private void OnTypeRequested(object sender, TypeRequestedEventArgs e) { var vm = (ObjectPropertyViewModel)sender; var panel = this.FindParent <PropertyEditorPanel> (); ITypeInfo type = TypeSelectorWindow.RequestType(panel, vm.AssignableTypes); e.SelectedType = type; }
internal static ITypeInfo RequestType(FrameworkElement owner, AsyncValue <IReadOnlyDictionary <IAssemblyInfo, ILookup <string, ITypeInfo> > > assignableTypes) { Window hostWindow = Window.GetWindow(owner); var w = new TypeSelectorWindow(owner.Resources.MergedDictionaries, assignableTypes) { Owner = hostWindow, }; if (!w.ShowDialog() ?? false) { return(null); } return(((TypeSelectorViewModel)w.DataContext).SelectedType); }
internal static ITypeInfo RequestType(PropertyEditorPanel owner, AsyncValue <IReadOnlyDictionary <IAssemblyInfo, ILookup <string, ITypeInfo> > > assignableTypes) { Window hostWindow = Window.GetWindow(owner); var w = new TypeSelectorWindow(owner.Resources.MergedDictionaries, assignableTypes) { Owner = hostWindow, }; w.Resources.MergedDictionaries.AddItems(owner.Resources.MergedDictionaries); if (!w.ShowDialog() ?? false) { return(null); } return(w.tree.SelectedItem as ITypeInfo); }
private void OnTypeRequested(object sender, TypeRequestedEventArgs args) { args.SelectedType = Task.FromResult(TypeSelectorWindow.RequestType(this, ((CollectionPropertyViewModel)DataContext).AssignableTypes)); }