public LogsController(IGraphDataService graphDataService, ISitesRepository sitesRepository, IWeathersRepository weathersRepository) { GraphDataService = graphDataService; SitesRepository = sitesRepository; WeathersRepository = weathersRepository; }
//another constructor for inject IGraphDataService to graph explorer public GraphExplorer(IGraphDataService graphDataService) : this() { //load data if graphDataService is provided if (graphDataService != null) { this.Loaded += (s, e) => { GraphDataService = graphDataService; } } ; } void AreaNav_VertexDoubleClick(object sender, GraphX.Models.VertexSelectedEventArgs args) { //throw new NotImplementedException(); var vertex = args.VertexControl.DataContext as DataVertex; if (vertex == null || vertex == _currentNavItem) { return; } _currentNavItem = vertex; var degree = Area.Graph.Degree(vertex); if (degree < 1) { return; } NavigateTo(vertex, Area.Graph); } void Area_VertexDoubleClick(object sender, GraphX.Models.VertexSelectedEventArgs args) { if (tbtnCanEdit.IsChecked.HasValue && tbtnCanEdit.IsChecked.Value) { return; } var vertex = args.VertexControl.DataContext as DataVertex; if (vertex == null) { return; } _currentNavItem = vertex; var degree = Area.Graph.Degree(vertex); if (degree < 1) { return; } NavigateTo(vertex, Area.Graph); if (navTab.Visibility != System.Windows.Visibility.Visible) { navTab.Visibility = System.Windows.Visibility.Visible; } navTab.IsSelected = true; }