diff --git a/SunlightCentralizedControlManagement_SCCM_.csproj b/SunlightCentralizedControlManagement_SCCM_.csproj
index 94be685..fff5554 100644
--- a/SunlightCentralizedControlManagement_SCCM_.csproj
+++ b/SunlightCentralizedControlManagement_SCCM_.csproj
@@ -93,7 +93,6 @@
-
@@ -161,9 +160,6 @@
RoilingTextBlock.xaml
-
- Timeline.xaml
-
Whole.xaml
@@ -242,10 +238,6 @@
Designer
MSBuild:Compile
-
- Designer
- MSBuild:Compile
-
Designer
MSBuild:Compile
diff --git a/View/ProductionPlanningView.xaml.cs b/View/ProductionPlanningView.xaml.cs
index a65e6bc..4200613 100644
--- a/View/ProductionPlanningView.xaml.cs
+++ b/View/ProductionPlanningView.xaml.cs
@@ -35,6 +35,9 @@ using LiveChartsCore.SkiaSharpView.WPF;
using System.Data.Entity.Core.Common.CommandTrees.ExpressionBuilder;
using nGantt.GanttChart;
using nGantt;
+using nGantt.PeriodSplitter;
+using ScottPlot.TickGenerators.TimeUnits;
+using System.Runtime.Serialization;
namespace SunlightCentralizedControlManagement_SCCM_.View
@@ -53,20 +56,60 @@ namespace SunlightCentralizedControlManagement_SCCM_.View
private SQLiteHelper SQLiteHelpers = null; //定义数据库
private readonly string DBAddress = Environment.CurrentDirectory + "\\DataBase\\SCCM.db"; //数据库路径
-
+ private int GantLenght { get; set; }
private void UserControl_Loaded(object sender, RoutedEventArgs e)//打开页面时的操作
{
- List qw = MainWindowViewModel.Machines.AsEnumerable().Select(row => row.Field("name")).ToList();//转换列名为机台
- int asd = qw.Count();
+ // List qw = MainWindowViewModel.Machines.AsEnumerable().Select(row => row.Field("name")).ToList();//转换列名为机台
+ // int asd = qw.Count();
+ GantLenght = 1;
+ DateTime minDate = DateTime.Parse("2012-02-01").Date;
+ DateTime maxDate = minDate.AddDays(GantLenght);
+
+ GanttChart.Initialize(minDate, maxDate);
+ var gridLineTimeLine = GanttChart.CreateTimeLine(new PeriodDaySplitter(minDate, maxDate), FormatDay);
+
+ GanttChart.CreateTimeLine(new PeriodHourSplitter(minDate, maxDate), FormatHour);
+ // GanttChart.CreateTimeLine(new PeriodDaySplitter(minDate, maxDate), FormatDayName);
+
+ // Set the timeline to atatch gridlines to
+ GanttChart.SetGridLinesTimeline(gridLineTimeLine, DetermineBackground);
+
var rowgroup1 = GanttChart.CreateGanttRowGroup("HeaderdGanttRowGroup");
var row1 = GanttChart.CreateGanttRow(rowgroup1, "GanttRow 1");
- GanttChart.AddGanttTask(row1, new GanttTask() { Start = DateTime.Parse("2012-02-01"), End = DateTime.Parse("2012-03-01"), Name = "GanttRow 1:GanttTask 1", TaskProgressVisibility = System.Windows.Visibility.Hidden });
- GanttChart.AddGanttTask(row1, new GanttTask() { Start = DateTime.Parse("2012-03-05"), End = DateTime.Parse("2012-05-01"), Name = "GanttRow 1:GanttTask 2" });
- GanttChart.AddGanttTask(row1, new GanttTask() { Start = DateTime.Parse("2012-06-01"), End = DateTime.Parse("2012-06-15"), Name = "GanttRow 1:GanttTask 3" });
+ GanttChart.AddGanttTask(row1, new GanttTask() { Start = DateTime.Parse("2012-02-01 00:30:00"), End = DateTime.Parse("2012-02-01 01:00:00"), Name = "GanttRow 1:GanttTask 1", TaskProgressVisibility = System.Windows.Visibility.Hidden });
+ GanttChart.AddGanttTask(row1, new GanttTask() { Start = DateTime.Parse("2012-02-01 06:00:00"), End = DateTime.Parse("2012-02-01 07:00:00"), Name = "GanttRow 1:GanttTask 2" });
+ GanttChart.AddGanttTask(row1, new GanttTask() { Start = DateTime.Parse("2012-02-01 10:00:00"), End = DateTime.Parse("2012-02-01 20:00:00"), Name = "GanttRow 1:GanttTask 3" });
}
+ private string FormatYear(Period period)
+ {
+ return period.Start.Year.ToString();
+ }
+ private string FormatMonth(Period period)
+ {
+ return period.Start.Month.ToString();
+ }
+ private string FormatDay(Period period)
+ {
+ return period.Start.Day.ToString();
+ }
+ private string FormatDayName(Period period)
+ {
+ return period.Start.DayOfWeek.ToString();
+ }
+ private string FormatHour(Period period)
+ {
+ return period.Start.Hour.ToString();
+ }
+ private System.Windows.Media.Brush DetermineBackground(TimeLineItem timeLineItem)
+ {
+ if (timeLineItem.End.Date.DayOfWeek == DayOfWeek.Saturday || timeLineItem.End.Date.DayOfWeek == DayOfWeek.Sunday)
+ return new System.Windows.Media.SolidColorBrush(System.Windows.Media.Colors.LightBlue);
+ else
+ return new System.Windows.Media.SolidColorBrush(System.Windows.Media.Colors.Transparent);
+ }
private void ListViewItem_Quit(object sender, System.Windows.Input.MouseButtonEventArgs e)//退出事件
{
diff --git a/View/Timeline.xaml b/View/Timeline.xaml
deleted file mode 100644
index 0299879..0000000
--- a/View/Timeline.xaml
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
-
diff --git a/View/Timeline.xaml.cs b/View/Timeline.xaml.cs
deleted file mode 100644
index 4a3fcdd..0000000
--- a/View/Timeline.xaml.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-using System;
-using System.Collections.Generic;
-using System.Linq;
-using System.Text;
-using System.Threading.Tasks;
-using System.Windows;
-using System.Windows.Controls;
-using System.Windows.Data;
-using System.Windows.Documents;
-using System.Windows.Input;
-using System.Windows.Media;
-using System.Windows.Media.Imaging;
-using System.Windows.Navigation;
-using System.Windows.Shapes;
-
-namespace SunlightCentralizedControlManagement_SCCM_.View
-{
- ///
- /// Timeline.xaml 的交互逻辑
- ///
- public partial class Timeline : UserControl
- {
- public Timeline()
- {
- InitializeComponent();
- }
- }
-}