/// <summary> /// Subscribes to the Selected item changed event. ItemInfo of the selected item is instantiated. /// </summary> /// <param name="obj"></param> private async void OnSelectedItemChanged(ProjectWindowSelectedItemsChangedEventArgs obj) { //The viewmodel MetadataBrowserViewModel vm = FrameworkApplication.DockPaneManager.Find("MetadataBrowserControl_Dockpane1") as MetadataBrowserViewModel; if (vm != null) { // ItemMetadata info = new ItemMetadata(null, ""); var item = Project.Current?.SelectedItems?.FirstOrDefault(); if (item != null) { var xml = await ItemMetadata.GetXML(item); if (!string.IsNullOrEmpty(xml)) //Item has xml { vm.ItemInformation = new ItemMetadata(item, xml); vm.ApplyTransform(); vm.DockpaneVisible = System.Windows.Visibility.Visible; } else { vm.DockpaneVisible = System.Windows.Visibility.Collapsed; } } else { vm.DockpaneVisible = System.Windows.Visibility.Collapsed; } } }
private void OnAppStartupReady(EventArgs obj) { //The viewmodel MetadataBrowserViewModel vm = FrameworkApplication.DockPaneManager.Find("MetadataBrowserControl_Dockpane1") as MetadataBrowserViewModel; //get the selected item var item = Project.Current?.SelectedItems?.FirstOrDefault(); if (item != null && item.GetXml() != null) //Item selected and it has metadata { vm.DockpaneVisible = System.Windows.Visibility.Visible; //Visibility is set } else //No item selected { vm.DockpaneVisible = System.Windows.Visibility.Collapsed; //Visibility hidden } }
protected override void OnClick() { MetadataBrowserViewModel.Show(); }