mirror of
https://gitee.com/akwkevin/aistudio.-wpf.-diagram
synced 2026-04-13 20:56:35 +08:00
动画demo完成
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Collections.ObjectModel;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
@@ -35,17 +36,75 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo
|
||||
assembly.GetTypes().Where(x => x.Namespace.StartsWith("AIStudio.Wpf.DiagramDesigner.Demo.ViewModels") && x.Name.Contains("ViewModel")).ToList().ForEach(x => _viewModelDic.Add(x.Name.Remove(x.Name.Length - 9), x));
|
||||
}
|
||||
#endregion
|
||||
|
||||
List<MenuItemViewModel> _menus;
|
||||
public MainWindow()
|
||||
{
|
||||
InitializeComponent();
|
||||
this.Loaded += MainWindow_Loaded;
|
||||
listbox.ItemsSource = _viewDic.Keys.ToList();
|
||||
|
||||
_menus = new List<MenuItemViewModel>()
|
||||
{
|
||||
new MenuItemViewModel(){Title = "Simple"},
|
||||
new MenuItemViewModel(){Title = "Locked"},
|
||||
new MenuItemViewModel(){Title = "Events"},
|
||||
new MenuItemViewModel(){Title = "DynamicInsertions"},
|
||||
new MenuItemViewModel(){Title = "Performance"},
|
||||
new MenuItemViewModel(){Title = "Zoom"},
|
||||
new MenuItemViewModel(){Title = "SnapToGrid"},
|
||||
new MenuItemViewModel(){Title = "DragAndDrop"},
|
||||
new MenuItemViewModel(){Title = "Nodes",
|
||||
Children=new List<MenuItemViewModel>
|
||||
{
|
||||
new MenuItemViewModel(){Title = "Svg"},
|
||||
new MenuItemViewModel(){Title = "Portless"},
|
||||
}
|
||||
},
|
||||
new MenuItemViewModel(){Title = "Links",
|
||||
Children=new List<MenuItemViewModel>
|
||||
{
|
||||
new MenuItemViewModel(){Title = "Snapping"},
|
||||
new MenuItemViewModel(){Title = "Labels"},
|
||||
new MenuItemViewModel(){Title = "Vertices"},
|
||||
new MenuItemViewModel(){Title = "Markers"},
|
||||
new MenuItemViewModel(){Title = "Routers"},
|
||||
new MenuItemViewModel(){Title = "PathGenerators"},
|
||||
}
|
||||
},
|
||||
new MenuItemViewModel(){Title = "Groups",
|
||||
Children=new List<MenuItemViewModel>
|
||||
{
|
||||
new MenuItemViewModel(){Title = "Grouping"},
|
||||
}
|
||||
},
|
||||
new MenuItemViewModel(){Title = "Customization",
|
||||
Children=new List<MenuItemViewModel>
|
||||
{
|
||||
new MenuItemViewModel(){Title = "CustomNode"},
|
||||
new MenuItemViewModel(){Title = "CustomLink"},
|
||||
new MenuItemViewModel(){Title = "CustomPort"},
|
||||
new MenuItemViewModel(){Title = "CustomGroup"},
|
||||
}
|
||||
},
|
||||
new MenuItemViewModel(){Title = "Algorithms",
|
||||
Children=new List<MenuItemViewModel>
|
||||
{
|
||||
|
||||
}
|
||||
},
|
||||
new MenuItemViewModel(){Title = "Animations",
|
||||
Children=new List<MenuItemViewModel>
|
||||
{
|
||||
new MenuItemViewModel(){Title = "PathAnimation"},
|
||||
new MenuItemViewModel(){Title = "LineAnimation"},
|
||||
}
|
||||
},
|
||||
};
|
||||
treeview.ItemsSource = _menus;
|
||||
}
|
||||
|
||||
private void MainWindow_Loaded(object sender, RoutedEventArgs e)
|
||||
{
|
||||
listbox.SelectedIndex = 0;
|
||||
treeview.SelectObject(_menus.FirstOrDefault());
|
||||
}
|
||||
|
||||
private void Button_Click(object sender, RoutedEventArgs e)
|
||||
@@ -74,17 +133,33 @@ namespace AIStudio.Wpf.DiagramDesigner.Demo
|
||||
ContentControl.Content = control;
|
||||
}
|
||||
else
|
||||
ContentControl.Content = null;
|
||||
{
|
||||
ContentControl.Content = new Controls.NotDoneYetControl();
|
||||
}
|
||||
}
|
||||
|
||||
private void ListBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
|
||||
private void treeview_SelectedItemChanged(object sender, RoutedPropertyChangedEventArgs<object> e)
|
||||
{
|
||||
if (!IsLoaded)
|
||||
return;
|
||||
|
||||
var tag = listbox.SelectedItem as string;
|
||||
|
||||
ShowContent(tag);
|
||||
if (e.NewValue is MenuItemViewModel menuItemViewModel && menuItemViewModel.Children == null)
|
||||
{
|
||||
ShowContent(menuItemViewModel.Title);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public class MenuItemViewModel
|
||||
{
|
||||
public string Title
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
|
||||
public List<MenuItemViewModel> Children
|
||||
{
|
||||
get; set;
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user