init lserp cs 5.0

This commit is contained in:
cyf
2026-07-10 15:25:05 +08:00
commit 90f3fda86a
3799 changed files with 976868 additions and 0 deletions
+20
View File
@@ -0,0 +1,20 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Lskj.Gantts", "Gantts\Lskj.Gantts.csproj", "{60029A4A-0EEA-4677-917C-4B485A3104A0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Debug|x86.ActiveCfg = Debug|x86
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Debug|x86.Build.0 = Debug|x86
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Release|x86.ActiveCfg = Release|x86
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
+35
View File
@@ -0,0 +1,35 @@
<GhostDoc>
<SpellChecker>
<IncludeExtensions>
</IncludeExtensions>
<IgnoreExtensions>
</IgnoreExtensions>
<IgnoreFiles>
</IgnoreFiles>
</SpellChecker>
<HelpConfigurations selected="HelpFile">
<HelpConfiguration name="HelpFile">
<OutputPath>.\Help</OutputPath>
<ImageFolderPath />
<HtmlFormats>
<HtmlHelp>true</HtmlHelp>
<MSHelpViewer>false</MSHelpViewer>
<MSHelp2>false</MSHelp2>
<Website>false</Website>
</HtmlFormats>
<IncludeScopes>
<Public>true</Public>
<Internal>false</Internal>
<Protected>false</Protected>
<Private>false</Private>
<Inherited>true</Inherited>
<EnableTags>false</EnableTags>
<TagList />
</IncludeScopes>
<ResolveCrefLinks>true</ResolveCrefLinks>
<HeaderText />
<FooterText />
<SelectedProjects />
</HelpConfiguration>
</HelpConfigurations>
</GhostDoc>
+43
View File
@@ -0,0 +1,43 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using CommonLib;
using CommonLib.utils;
using System.Windows.Forms;
namespace Lskj.Gantts
{
/// <summary>
/// c#库被调用统一接口类
/// </summary>
public sealed class DllBaseClass : IForm {
public DllBaseClass() {
}
public DllBaseClass(string[] obj) {
try {
FrmMain add = new FrmMain();
this.SubForm = add;
add.FormText = obj[0].ToString();
add.OperatorId = obj[1].ToString();
add.OperatorName = obj[2].ToString();
add.Privilege = obj[3].ToString();
add.DLLCoid = obj[4].ToString();
//MessageBox.Show(add.dllSql.ToString() + " Josn:" + add.jsonData.ToString() + " KeyValue:" + add.keyValue.ToString());
}
catch (Exception ex) {
PubUtil.WriteLog("Lskj.Gantts.dll----参数错误" + ex.Message);
MessageBox.Show(ex.Message);
}
}
/// <summary>
/// 窗口
/// </summary>
public Form SubForm { get; set; }
}
}
+247
View File
@@ -0,0 +1,247 @@
namespace Lskj.Gantts
{
partial class FrmMain
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows
/// <summary>
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
DevExpress.XtraScheduler.TimeScaleYear timeScaleYear1 = new DevExpress.XtraScheduler.TimeScaleYear();
DevExpress.XtraScheduler.TimeScaleQuarter timeScaleQuarter1 = new DevExpress.XtraScheduler.TimeScaleQuarter();
DevExpress.XtraScheduler.TimeScaleMonth timeScaleMonth1 = new DevExpress.XtraScheduler.TimeScaleMonth();
DevExpress.XtraScheduler.TimeScaleWeek timeScaleWeek1 = new DevExpress.XtraScheduler.TimeScaleWeek();
DevExpress.XtraScheduler.TimeScaleDay timeScaleDay1 = new DevExpress.XtraScheduler.TimeScaleDay();
DevExpress.XtraScheduler.TimeScaleHour timeScaleHour1 = new DevExpress.XtraScheduler.TimeScaleHour();
DevExpress.XtraScheduler.TimeScale15Minutes timeScale15Minutes1 = new DevExpress.XtraScheduler.TimeScale15Minutes();
DevExpress.XtraScheduler.TimeRuler timeRuler1 = new DevExpress.XtraScheduler.TimeRuler();
DevExpress.XtraScheduler.TimeScaleYear timeScaleYear2 = new DevExpress.XtraScheduler.TimeScaleYear();
DevExpress.XtraScheduler.TimeScaleQuarter timeScaleQuarter2 = new DevExpress.XtraScheduler.TimeScaleQuarter();
DevExpress.XtraScheduler.TimeScaleMonth timeScaleMonth2 = new DevExpress.XtraScheduler.TimeScaleMonth();
DevExpress.XtraScheduler.TimeScaleWeek timeScaleWeek2 = new DevExpress.XtraScheduler.TimeScaleWeek();
DevExpress.XtraScheduler.TimeScaleDay timeScaleDay2 = new DevExpress.XtraScheduler.TimeScaleDay();
DevExpress.XtraScheduler.TimeScaleHour timeScaleHour2 = new DevExpress.XtraScheduler.TimeScaleHour();
DevExpress.XtraScheduler.TimeScale15Minutes timeScale15Minutes2 = new DevExpress.XtraScheduler.TimeScale15Minutes();
DevExpress.XtraScheduler.TimeRuler timeRuler2 = new DevExpress.XtraScheduler.TimeRuler();
this.splitContainerControl1 = new DevExpress.XtraEditors.SplitContainerControl();
this.resourcesTree1 = new DevExpress.XtraScheduler.UI.ResourcesTree();
this.Days = new DevExpress.XtraScheduler.Native.ResourceTreeColumn();
this.schedulerControl1 = new DevExpress.XtraScheduler.SchedulerControl();
this.schedulerStorage1 = new DevExpress.XtraScheduler.SchedulerStorage(this.components);
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).BeginInit();
this.splitContainerControl1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.resourcesTree1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerControl1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerStorage1)).BeginInit();
this.SuspendLayout();
//
// splitContainerControl1
//
this.splitContainerControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainerControl1.Location = new System.Drawing.Point(0, 0);
this.splitContainerControl1.Name = "splitContainerControl1";
this.splitContainerControl1.Panel1.Controls.Add(this.resourcesTree1);
this.splitContainerControl1.Panel1.Text = "Panel1";
this.splitContainerControl1.Panel2.Controls.Add(this.schedulerControl1);
this.splitContainerControl1.Panel2.Text = "Panel2";
this.splitContainerControl1.Size = new System.Drawing.Size(1152, 670);
this.splitContainerControl1.SplitterPosition = 269;
this.splitContainerControl1.TabIndex = 0;
this.splitContainerControl1.Text = "splitContainerControl1";
//
// resourcesTree1
//
this.resourcesTree1.Columns.AddRange(new DevExpress.XtraTreeList.Columns.TreeListColumn[] {
this.Days});
this.resourcesTree1.Dock = System.Windows.Forms.DockStyle.Fill;
this.resourcesTree1.Location = new System.Drawing.Point(0, 0);
this.resourcesTree1.Name = "resourcesTree1";
this.resourcesTree1.OptionsBehavior.Editable = false;
this.resourcesTree1.SchedulerControl = this.schedulerControl1;
this.resourcesTree1.ShowButtonMode = DevExpress.XtraTreeList.ShowButtonModeEnum.Default;
this.resourcesTree1.Size = new System.Drawing.Size(269, 670);
this.resourcesTree1.TabIndex = 0;
this.resourcesTree1.FocusedNodeChanged += new DevExpress.XtraTreeList.FocusedNodeChangedEventHandler(this.resourcesTree1_FocusedNodeChanged);
//
// Days
//
this.Days.AppearanceCell.Font = new System.Drawing.Font("宋体", 9F);
this.Days.AppearanceCell.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.Days.AppearanceCell.Options.UseFont = true;
this.Days.Caption = "天数";
this.Days.FieldName = "DaysPlanned";
this.Days.Name = "Days";
this.Days.OptionsColumn.AllowMoveToCustomizationForm = false;
this.Days.Visible = true;
this.Days.VisibleIndex = 0;
this.Days.Width = 85;
//
// schedulerControl1
//
this.schedulerControl1.ActiveViewType = DevExpress.XtraScheduler.SchedulerViewType.Gantt;
this.schedulerControl1.Appearance.AlternateHeaderCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);
this.schedulerControl1.Appearance.AlternateHeaderCaption.Options.UseFont = true;
this.schedulerControl1.Appearance.HeaderCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);
this.schedulerControl1.Appearance.HeaderCaption.Options.UseFont = true;
this.schedulerControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.schedulerControl1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.schedulerControl1.Location = new System.Drawing.Point(0, 0);
this.schedulerControl1.Name = "schedulerControl1";
this.schedulerControl1.OptionsRangeControl.RangeMaximum = new System.DateTime(2017, 9, 30, 0, 0, 0, 0);
this.schedulerControl1.OptionsRangeControl.RangeMinimum = new System.DateTime(2017, 9, 1, 0, 0, 0, 0);
timeScaleYear1.Enabled = false;
timeScaleQuarter1.Enabled = false;
timeScaleMonth1.Enabled = false;
timeScaleWeek1.DisplayFormat = "yyyy MMMM";
timeScaleDay1.Width = 100;
timeScaleHour1.Enabled = false;
timeScale15Minutes1.Enabled = false;
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleYear1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleQuarter1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleMonth1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleWeek1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleDay1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleHour1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScale15Minutes1);
this.schedulerControl1.OptionsView.ResourceHeaders.Height = 50;
this.schedulerControl1.OptionsView.ResourceHeaders.RotateCaption = false;
this.schedulerControl1.OptionsView.ShowOnlyResourceAppointments = true;
this.schedulerControl1.Size = new System.Drawing.Size(877, 670);
this.schedulerControl1.Start = new System.DateTime(2017, 9, 11, 0, 0, 0, 0);
this.schedulerControl1.Storage = this.schedulerStorage1;
this.schedulerControl1.TabIndex = 0;
this.schedulerControl1.Text = "schedulerControl1";
this.schedulerControl1.Views.DayView.AppointmentDisplayOptions.AllDayAppointmentsStatusDisplayType = DevExpress.XtraScheduler.AppointmentStatusDisplayType.Bounds;
this.schedulerControl1.Views.DayView.DayCount = 3;
this.schedulerControl1.Views.DayView.Enabled = false;
this.schedulerControl1.Views.DayView.TimeRulers.Add(timeRuler1);
this.schedulerControl1.Views.GanttView.Appearance.AlternateHeaderCaption.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel, ((byte)(3)));
this.schedulerControl1.Views.GanttView.Appearance.AlternateHeaderCaption.Options.UseFont = true;
this.schedulerControl1.Views.GanttView.Appearance.HeaderCaption.Font = new System.Drawing.Font("Tahoma", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);
this.schedulerControl1.Views.GanttView.Appearance.HeaderCaption.Options.UseFont = true;
this.schedulerControl1.Views.GanttView.AppointmentDisplayOptions.AppointmentAutoHeight = true;
this.schedulerControl1.Views.GanttView.AppointmentDisplayOptions.AppointmentInterspacing = 3;
this.schedulerControl1.Views.GanttView.AppointmentDisplayOptions.ShowRecurrence = false;
this.schedulerControl1.Views.GanttView.AppointmentDisplayOptions.ShowReminder = false;
this.schedulerControl1.Views.GanttView.CellsAutoHeightOptions.Enabled = true;
this.schedulerControl1.Views.GanttView.NavigationButtonVisibility = DevExpress.XtraScheduler.NavigationButtonVisibility.Always;
timeScaleYear2.Enabled = false;
timeScaleQuarter2.Enabled = false;
timeScaleMonth2.Enabled = false;
timeScaleDay2.Enabled = false;
timeScaleHour2.Enabled = false;
timeScale15Minutes2.Enabled = false;
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleYear2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleQuarter2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleMonth2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleWeek2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleDay2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleHour2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScale15Minutes2);
this.schedulerControl1.Views.GanttView.ShowResourceHeaders = false;
this.schedulerControl1.Views.MonthView.Enabled = false;
this.schedulerControl1.Views.MonthView.WeekCount = 3;
this.schedulerControl1.Views.TimelineView.Enabled = false;
this.schedulerControl1.Views.WeekView.Enabled = false;
this.schedulerControl1.Views.WorkWeekView.Enabled = false;
this.schedulerControl1.Views.WorkWeekView.ShowFullWeek = true;
this.schedulerControl1.Views.WorkWeekView.TimeRulers.Add(timeRuler2);
this.schedulerControl1.PopupMenuShowing += new DevExpress.XtraScheduler.PopupMenuShowingEventHandler(this.schedulerControl1_PopupMenuShowing);
//this.schedulerControl1.EditAppointmentFormShowing += new DevExpress.XtraScheduler.AppointmentFormEventHandler(this.schedulerControl1_EditAppointmentFormShowing);
//
// schedulerStorage1
//
this.schedulerStorage1.AppointmentDependencies.Mappings.DependentId = "Dependent";
this.schedulerStorage1.AppointmentDependencies.Mappings.ParentId = "Parent";
this.schedulerStorage1.AppointmentDependencies.Mappings.Type = "Type";
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel("空闲", "&None"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(194)))), ((int)(((byte)(190))))), "Important", "&Important"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(168)))), ((int)(((byte)(213)))), ((int)(((byte)(255))))), "Business", "&Business"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(193)))), ((int)(((byte)(244)))), ((int)(((byte)(156))))), "Personal", "&Personal"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(243)))), ((int)(((byte)(228)))), ((int)(((byte)(199))))), "Vacation", "&Vacation"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(206)))), ((int)(((byte)(147))))), "Must Attend", "Must &Attend"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(199)))), ((int)(((byte)(244)))), ((int)(((byte)(255))))), "Travel Required", "&Travel Required"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(207)))), ((int)(((byte)(219)))), ((int)(((byte)(152))))), "Needs Preparation", "&Needs Preparation"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(207)))), ((int)(((byte)(233))))), "Birthday", "&Birthday"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(141)))), ((int)(((byte)(233)))), ((int)(((byte)(223))))), "Anniversary", "&Anniversary"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(247)))), ((int)(((byte)(165))))), "Phone Call", "Phone &Call"));
this.schedulerStorage1.Appointments.Mappings.AllDay = "wms_item_AllDay";
this.schedulerStorage1.Appointments.Mappings.AppointmentId = "Id";
this.schedulerStorage1.Appointments.Mappings.Description = "wms_item_Description";
this.schedulerStorage1.Appointments.Mappings.End = "wms_item_EndTime";
this.schedulerStorage1.Appointments.Mappings.Label = "wms_item_Label";
this.schedulerStorage1.Appointments.Mappings.Location = "wms_item_Location";
this.schedulerStorage1.Appointments.Mappings.PercentComplete = "wms_item_PercentComplete";
this.schedulerStorage1.Appointments.Mappings.RecurrenceInfo = "wms_item_ReCurrenceInfo";
this.schedulerStorage1.Appointments.Mappings.ReminderInfo = "wms_item_ReminderInfo";
this.schedulerStorage1.Appointments.Mappings.ResourceId = "wms_item_ResourceId";
this.schedulerStorage1.Appointments.Mappings.Start = "wms_item_StartTime";
this.schedulerStorage1.Appointments.Mappings.Subject = "wms_item_Subject";
this.schedulerStorage1.Appointments.Mappings.Type = "wms_item_EventType";
this.schedulerStorage1.Resources.Mappings.Caption = "SpeciesName";
this.schedulerStorage1.Resources.Mappings.Id = "SpeciesNo";
this.schedulerStorage1.Resources.Mappings.ParentId = "pid";
this.schedulerStorage1.AppointmentsInserted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentsInserted);
this.schedulerStorage1.AppointmentsChanged += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentsChanged);
this.schedulerStorage1.AppointmentsDeleted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentsDeleted);
this.schedulerStorage1.AppointmentDependenciesInserted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentDependenciesInserted);
this.schedulerStorage1.AppointmentDependenciesChanged += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentDependenciesChanged);
this.schedulerStorage1.AppointmentDependenciesDeleted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentDependenciesDeleted);
//
// FrmMain
//
this.Appearance.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(0)));
this.Appearance.Options.UseFont = true;
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1152, 670);
this.Controls.Add(this.splitContainerControl1);
this.LookAndFeel.SkinName = "Office 2010 Blue";
this.LookAndFeel.Style = DevExpress.LookAndFeel.LookAndFeelStyle.Office2003;
this.Name = "FrmMain";
this.Text = "日程任务管理";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).EndInit();
this.splitContainerControl1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.resourcesTree1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerControl1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerStorage1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.SplitContainerControl splitContainerControl1;
private DevExpress.XtraScheduler.SchedulerControl schedulerControl1;
private DevExpress.XtraScheduler.SchedulerStorage schedulerStorage1;
private DevExpress.XtraScheduler.Native.ResourceTreeColumn Days;
private DevExpress.XtraScheduler.UI.ResourcesTree resourcesTree1;
}
}
File diff suppressed because it is too large Load Diff
+126
View File
@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="schedulerStorage1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
<metadata name="$this.TrayHeight" type="System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<value>35</value>
</metadata>
</root>
+20
View File
@@ -0,0 +1,20 @@
Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Gantts", "Gantts\Gantts.csproj", "{60029A4A-0EEA-4677-917C-4B485A3104A0}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|x86 = Debug|x86
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Debug|x86.ActiveCfg = Debug|x86
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Debug|x86.Build.0 = Debug|x86
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Release|x86.ActiveCfg = Release|x86
{60029A4A-0EEA-4677-917C-4B485A3104A0}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
EndGlobal
@@ -0,0 +1,35 @@
<GhostDoc>
<SpellChecker>
<IncludeExtensions>
</IncludeExtensions>
<IgnoreExtensions>
</IgnoreExtensions>
<IgnoreFiles>
</IgnoreFiles>
</SpellChecker>
<HelpConfigurations selected="HelpFile">
<HelpConfiguration name="HelpFile">
<OutputPath>.\Help</OutputPath>
<ImageFolderPath />
<HtmlFormats>
<HtmlHelp>true</HtmlHelp>
<MSHelpViewer>false</MSHelpViewer>
<MSHelp2>false</MSHelp2>
<Website>false</Website>
</HtmlFormats>
<IncludeScopes>
<Public>true</Public>
<Internal>false</Internal>
<Protected>false</Protected>
<Private>false</Private>
<Inherited>true</Inherited>
<EnableTags>false</EnableTags>
<TagList />
</IncludeScopes>
<ResolveCrefLinks>true</ResolveCrefLinks>
<HeaderText />
<FooterText />
<SelectedProjects />
</HelpConfiguration>
</HelpConfigurations>
</GhostDoc>
+263
View File
@@ -0,0 +1,263 @@
namespace Gantts
{
partial class Form1
{
/// <summary>
/// 必需的设计器变量。
/// </summary>
private System.ComponentModel.IContainer components = null;
/// <summary>
/// 清理所有正在使用的资源。
/// </summary>
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
protected override void Dispose(bool disposing)
{
if (disposing && (components != null))
{
components.Dispose();
}
base.Dispose(disposing);
}
#region Windows
/// <summary>
/// 设计器支持所需的方法 - 不要
/// 使用代码编辑器修改此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.components = new System.ComponentModel.Container();
DevExpress.XtraScheduler.TimeScaleYear timeScaleYear1 = new DevExpress.XtraScheduler.TimeScaleYear();
DevExpress.XtraScheduler.TimeScaleQuarter timeScaleQuarter1 = new DevExpress.XtraScheduler.TimeScaleQuarter();
DevExpress.XtraScheduler.TimeScaleMonth timeScaleMonth1 = new DevExpress.XtraScheduler.TimeScaleMonth();
DevExpress.XtraScheduler.TimeScaleWeek timeScaleWeek1 = new DevExpress.XtraScheduler.TimeScaleWeek();
DevExpress.XtraScheduler.TimeScaleDay timeScaleDay1 = new DevExpress.XtraScheduler.TimeScaleDay();
DevExpress.XtraScheduler.TimeScaleHour timeScaleHour1 = new DevExpress.XtraScheduler.TimeScaleHour();
DevExpress.XtraScheduler.TimeScale15Minutes timeScale15Minutes1 = new DevExpress.XtraScheduler.TimeScale15Minutes();
DevExpress.XtraScheduler.TimeRuler timeRuler1 = new DevExpress.XtraScheduler.TimeRuler();
DevExpress.XtraScheduler.TimeScaleYear timeScaleYear2 = new DevExpress.XtraScheduler.TimeScaleYear();
DevExpress.XtraScheduler.TimeScaleQuarter timeScaleQuarter2 = new DevExpress.XtraScheduler.TimeScaleQuarter();
DevExpress.XtraScheduler.TimeScaleMonth timeScaleMonth2 = new DevExpress.XtraScheduler.TimeScaleMonth();
DevExpress.XtraScheduler.TimeScaleWeek timeScaleWeek2 = new DevExpress.XtraScheduler.TimeScaleWeek();
DevExpress.XtraScheduler.TimeScaleDay timeScaleDay2 = new DevExpress.XtraScheduler.TimeScaleDay();
DevExpress.XtraScheduler.TimeScaleHour timeScaleHour2 = new DevExpress.XtraScheduler.TimeScaleHour();
DevExpress.XtraScheduler.TimeScale15Minutes timeScale15Minutes2 = new DevExpress.XtraScheduler.TimeScale15Minutes();
DevExpress.XtraScheduler.TimeRuler timeRuler2 = new DevExpress.XtraScheduler.TimeRuler();
this.splitContainerControl1 = new DevExpress.XtraEditors.SplitContainerControl();
this.resourcesTree1 = new DevExpress.XtraScheduler.UI.ResourcesTree();
this.OrderId = new DevExpress.XtraScheduler.Native.ResourceTreeColumn();
this.Description = new DevExpress.XtraScheduler.Native.ResourceTreeColumn();
this.Days = new DevExpress.XtraScheduler.Native.ResourceTreeColumn();
this.Progress = new DevExpress.XtraScheduler.Native.ResourceTreeColumn();
this.schedulerControl1 = new DevExpress.XtraScheduler.SchedulerControl();
this.schedulerStorage1 = new DevExpress.XtraScheduler.SchedulerStorage(this.components);
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).BeginInit();
this.splitContainerControl1.SuspendLayout();
((System.ComponentModel.ISupportInitialize)(this.resourcesTree1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerControl1)).BeginInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerStorage1)).BeginInit();
this.SuspendLayout();
//
// splitContainerControl1
//
this.splitContainerControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.splitContainerControl1.Location = new System.Drawing.Point(0, 0);
this.splitContainerControl1.Name = "splitContainerControl1";
this.splitContainerControl1.Panel1.Controls.Add(this.resourcesTree1);
this.splitContainerControl1.Panel1.Text = "Panel1";
this.splitContainerControl1.Panel2.Controls.Add(this.schedulerControl1);
this.splitContainerControl1.Panel2.Text = "Panel2";
this.splitContainerControl1.Size = new System.Drawing.Size(1152, 670);
this.splitContainerControl1.SplitterPosition = 422;
this.splitContainerControl1.TabIndex = 0;
this.splitContainerControl1.Text = "splitContainerControl1";
//
// resourcesTree1
//
this.resourcesTree1.Columns.AddRange(new DevExpress.XtraTreeList.Columns.TreeListColumn[] {
this.OrderId,
this.Description,
this.Days,
this.Progress});
this.resourcesTree1.Dock = System.Windows.Forms.DockStyle.Fill;
this.resourcesTree1.Location = new System.Drawing.Point(0, 0);
this.resourcesTree1.Name = "resourcesTree1";
this.resourcesTree1.SchedulerControl = this.schedulerControl1;
this.resourcesTree1.ShowButtonMode = DevExpress.XtraTreeList.ShowButtonModeEnum.Default;
this.resourcesTree1.Size = new System.Drawing.Size(422, 670);
this.resourcesTree1.TabIndex = 0;
this.resourcesTree1.FocusedNodeChanged += new DevExpress.XtraTreeList.FocusedNodeChangedEventHandler(this.resourcesTree1_FocusedNodeChanged);
//
// OrderId
//
this.OrderId.AppearanceHeader.Font = new System.Drawing.Font("宋体", 9F);
this.OrderId.AppearanceHeader.Options.UseFont = true;
this.OrderId.Caption = "NO";
this.OrderId.FieldName = "OrderId";
this.OrderId.Name = "OrderId";
this.OrderId.SummaryFooter = DevExpress.XtraTreeList.SummaryItemType.Sum;
this.OrderId.Visible = true;
this.OrderId.VisibleIndex = 0;
//
// Description
//
this.Description.AppearanceCell.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.Description.AppearanceCell.Options.HighPriority = true;
this.Description.Caption = "描述";
this.Description.FieldName = "Description";
this.Description.Name = "Description";
this.Description.OptionsColumn.AllowMoveToCustomizationForm = false;
this.Description.Visible = true;
this.Description.VisibleIndex = 1;
this.Description.Width = 145;
//
// Days
//
this.Days.AppearanceCell.GradientMode = System.Drawing.Drawing2D.LinearGradientMode.Vertical;
this.Days.Caption = "天数";
this.Days.FieldName = "DaysPlanned";
this.Days.Name = "Days";
this.Days.OptionsColumn.AllowMoveToCustomizationForm = false;
this.Days.Visible = true;
this.Days.VisibleIndex = 2;
this.Days.Width = 85;
//
// Progress
//
this.Progress.Caption = "当前进度";
this.Progress.FieldName = "Progress";
this.Progress.Name = "Progress";
this.Progress.Visible = true;
this.Progress.VisibleIndex = 3;
this.Progress.Width = 115;
//
// schedulerControl1
//
this.schedulerControl1.ActiveViewType = DevExpress.XtraScheduler.SchedulerViewType.Gantt;
this.schedulerControl1.Appearance.AlternateHeaderCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);
this.schedulerControl1.Appearance.AlternateHeaderCaption.Options.UseFont = true;
this.schedulerControl1.Appearance.HeaderCaption.Font = new System.Drawing.Font("Tahoma", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Pixel);
this.schedulerControl1.Appearance.HeaderCaption.Options.UseFont = true;
this.schedulerControl1.Dock = System.Windows.Forms.DockStyle.Fill;
this.schedulerControl1.Font = new System.Drawing.Font("宋体", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
this.schedulerControl1.Location = new System.Drawing.Point(0, 0);
this.schedulerControl1.Name = "schedulerControl1";
timeScaleYear1.Enabled = false;
timeScaleQuarter1.Enabled = false;
timeScaleMonth1.Enabled = false;
timeScaleWeek1.DisplayFormat = "yyyy MMMM";
timeScaleDay1.Width = 100;
timeScaleHour1.Enabled = false;
timeScale15Minutes1.Enabled = false;
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleYear1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleQuarter1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleMonth1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleWeek1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleDay1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScaleHour1);
this.schedulerControl1.OptionsRangeControl.Scales.Add(timeScale15Minutes1);
this.schedulerControl1.OptionsView.ResourceHeaders.Height = 50;
this.schedulerControl1.OptionsView.ResourceHeaders.RotateCaption = false;
this.schedulerControl1.OptionsView.ShowOnlyResourceAppointments = true;
this.schedulerControl1.Size = new System.Drawing.Size(725, 670);
this.schedulerControl1.Start = new System.DateTime(2017, 9, 11, 0, 0, 0, 0);
this.schedulerControl1.Storage = this.schedulerStorage1;
this.schedulerControl1.TabIndex = 0;
this.schedulerControl1.Text = "schedulerControl1";
this.schedulerControl1.Views.DayView.TimeRulers.Add(timeRuler1);
this.schedulerControl1.Views.GanttView.AppointmentDisplayOptions.AppointmentAutoHeight = true;
this.schedulerControl1.Views.GanttView.CellsAutoHeightOptions.Enabled = true;
this.schedulerControl1.Views.GanttView.NavigationButtonVisibility = DevExpress.XtraScheduler.NavigationButtonVisibility.Always;
timeScaleYear2.Enabled = false;
timeScaleQuarter2.Enabled = false;
timeScaleMonth2.Enabled = false;
timeScaleDay2.Enabled = false;
timeScaleHour2.Enabled = false;
timeScale15Minutes2.Enabled = false;
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleYear2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleQuarter2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleMonth2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleWeek2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleDay2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScaleHour2);
this.schedulerControl1.Views.GanttView.Scales.Add(timeScale15Minutes2);
this.schedulerControl1.Views.TimelineView.Enabled = false;
this.schedulerControl1.Views.WorkWeekView.ShowFullWeek = true;
this.schedulerControl1.Views.WorkWeekView.TimeRulers.Add(timeRuler2);
this.schedulerControl1.PopupMenuShowing += new DevExpress.XtraScheduler.PopupMenuShowingEventHandler(this.schedulerControl1_PopupMenuShowing);
//
// schedulerStorage1
//
this.schedulerStorage1.AppointmentDependencies.Mappings.DependentId = "Dependent";
this.schedulerStorage1.AppointmentDependencies.Mappings.ParentId = "Parent";
this.schedulerStorage1.AppointmentDependencies.Mappings.Type = "Type";
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel("空闲", "&None"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(194)))), ((int)(((byte)(190))))), "Important", "&Important"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(168)))), ((int)(((byte)(213)))), ((int)(((byte)(255))))), "Business", "&Business"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(193)))), ((int)(((byte)(244)))), ((int)(((byte)(156))))), "Personal", "&Personal"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(243)))), ((int)(((byte)(228)))), ((int)(((byte)(199))))), "Vacation", "&Vacation"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(244)))), ((int)(((byte)(206)))), ((int)(((byte)(147))))), "Must Attend", "Must &Attend"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(199)))), ((int)(((byte)(244)))), ((int)(((byte)(255))))), "Travel Required", "&Travel Required"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(207)))), ((int)(((byte)(219)))), ((int)(((byte)(152))))), "Needs Preparation", "&Needs Preparation"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(224)))), ((int)(((byte)(207)))), ((int)(((byte)(233))))), "Birthday", "&Birthday"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(141)))), ((int)(((byte)(233)))), ((int)(((byte)(223))))), "Anniversary", "&Anniversary"));
this.schedulerStorage1.Appointments.Labels.Add(new DevExpress.XtraScheduler.AppointmentLabel(System.Drawing.Color.FromArgb(((int)(((byte)(255)))), ((int)(((byte)(247)))), ((int)(((byte)(165))))), "Phone Call", "Phone &Call"));
this.schedulerStorage1.Appointments.Mappings.AllDay = "AllDay";
this.schedulerStorage1.Appointments.Mappings.AppointmentId = "Id";
this.schedulerStorage1.Appointments.Mappings.Description = "Description";
this.schedulerStorage1.Appointments.Mappings.End = "EndTime";
this.schedulerStorage1.Appointments.Mappings.Label = "Label";
this.schedulerStorage1.Appointments.Mappings.Location = "Location";
this.schedulerStorage1.Appointments.Mappings.PercentComplete = "PercentComplete";
this.schedulerStorage1.Appointments.Mappings.RecurrenceInfo = "RecurrenceInfo";
this.schedulerStorage1.Appointments.Mappings.ReminderInfo = "ReminderInfo";
this.schedulerStorage1.Appointments.Mappings.ResourceId = "ResourceId";
this.schedulerStorage1.Appointments.Mappings.Start = "StartTime";
this.schedulerStorage1.Appointments.Mappings.Subject = "Subject";
this.schedulerStorage1.Appointments.Mappings.Type = "EventType";
this.schedulerStorage1.Resources.Mappings.Caption = "Description";
this.schedulerStorage1.Resources.Mappings.Id = "Id";
this.schedulerStorage1.Resources.Mappings.ParentId = "ParentId";
this.schedulerStorage1.AppointmentsInserted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentsInserted);
this.schedulerStorage1.AppointmentsChanged += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentsChanged);
this.schedulerStorage1.AppointmentsDeleted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentsDeleted);
this.schedulerStorage1.AppointmentDependenciesInserted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentDependenciesInserted);
this.schedulerStorage1.AppointmentDependenciesChanged += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentDependenciesChanged);
this.schedulerStorage1.AppointmentDependenciesDeleted += new DevExpress.XtraScheduler.PersistentObjectsEventHandler(this.schedulerStorage1_AppointmentDependenciesDeleted);
//
// Form1
//
this.AutoScaleDimensions = new System.Drawing.SizeF(8F, 15F);
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
this.ClientSize = new System.Drawing.Size(1152, 670);
this.Controls.Add(this.splitContainerControl1);
this.Name = "Form1";
this.Text = "Form1";
this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
this.FormClosing += new System.Windows.Forms.FormClosingEventHandler(this.Form1_FormClosing);
((System.ComponentModel.ISupportInitialize)(this.splitContainerControl1)).EndInit();
this.splitContainerControl1.ResumeLayout(false);
((System.ComponentModel.ISupportInitialize)(this.resourcesTree1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerControl1)).EndInit();
((System.ComponentModel.ISupportInitialize)(this.schedulerStorage1)).EndInit();
this.ResumeLayout(false);
}
#endregion
private DevExpress.XtraEditors.SplitContainerControl splitContainerControl1;
private DevExpress.XtraScheduler.UI.ResourcesTree resourcesTree1;
private DevExpress.XtraScheduler.SchedulerControl schedulerControl1;
private DevExpress.XtraScheduler.SchedulerStorage schedulerStorage1;
private DevExpress.XtraScheduler.Native.ResourceTreeColumn Description;
private DevExpress.XtraScheduler.Native.ResourceTreeColumn Days;
private DevExpress.XtraScheduler.Native.ResourceTreeColumn OrderId;
private DevExpress.XtraScheduler.Native.ResourceTreeColumn Progress;
}
}
+510
View File
@@ -0,0 +1,510 @@
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Microsoft.Win32;
using System.Data.SqlClient;
using DevExpress.XtraScheduler;
using System.Collections;
using System.Threading;
using Gantts.Properties;
using DevExpress.XtraScheduler.Services;
using DevExpress.XtraScheduler.Commands;
using DevExpress.Utils.Menu;
namespace Gantts
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
//数据库字符串
private string datastr;
private string ServerName;
private string LoginName;
private string _UpdateSet;
private int _Internet;
private string IsComsumer;
/// <summary>
/// 甘特图初始配置
/// </summary>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
/// <param name="sc"></param>
private void InitGrantView(DevExpress.XtraScheduler.SchedulerControl sc)
{
//设置资源
sc.GroupType = SchedulerGroupType.Resource;
//设置甘特图
sc.ActiveViewType = SchedulerViewType.Gantt;
sc.Views.GanttView.Scales.Clear();//清空
DevExpress.XtraScheduler.TimeScaleDay td = new TimeScaleDay();
td.Enabled = Settings.Default.date_scale;
DevExpress.XtraScheduler.TimeScaleMonth tm = new TimeScaleMonth();
tm.Enabled = Settings.Default.month_scale;
DevExpress.XtraScheduler.TimeScaleYear ty = new TimeScaleYear();
ty.Enabled = Settings.Default.year_scale;
DevExpress.XtraScheduler.TimeScaleWeek tw = new TimeScaleWeek();
tw.Enabled = Settings.Default.week_scale;
sc.Views.GanttView.Scales.Add(td);
sc.Views.GanttView.Scales.Add(tm);
sc.Views.GanttView.Scales.Add(ty);
sc.Views.GanttView.Scales.Add(tw);
sc.Views.GanttView.AppointmentDisplayOptions.AppointmentAutoHeight = true;
sc.Views.GanttView.AppointmentDisplayOptions.AppointmentHeight = 0;
sc.Views.GanttView.AppointmentDisplayOptions.AppointmentInterspacing = 1;
sc.Views.GanttView.AppointmentDisplayOptions.ContinueArrowDisplayType = AppointmentContinueArrowDisplayType.Never;
}
protected override void OnLoad(EventArgs e)
{
InitGrantView(this.schedulerControl1);
initLoad();
base.OnLoad(e);
}
/// <summary>
/// 读取注册表
/// </summary>
/// <remarks>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
/// 版本:1.0.0.0
/// </remarks>
public string ReadConfig()
{
RegistryKey regKey = Registry.CurrentUser;
RegistryKey subKey = regKey.OpenSubKey("AA_LS_Erp V2.0");
subKey = subKey.OpenSubKey("File");
datastr = subKey.GetValue("datastr", "") + "";
ServerName = subKey.GetValue("ServerName", "") + "";
LoginName = subKey.GetValue("LoginName", "") + "";
_UpdateSet = subKey.GetValue("UpdateSet", "1") + "";
_Internet = Convert.ToInt32(subKey.GetValue("Internet", 0));
IsComsumer = subKey.GetValue("IsConsumer", "1") + "";
string connectionStr = string.Format(@"Server={0};Database={1};Persist Security Info=True;User ID=wlms;Password=mymsserver", ServerName, datastr);
return connectionStr;
}
/// <summary>
/// 初步加载
/// </summary>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
public void initLoad()
{
string connectionStr = ReadConfig();
DataTable resouceTable = new DataTable();
DataTable dependenceTable = new DataTable();
DataTable taskTabel = new DataTable();
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
try
{
SqlDataAdapter adpt = new SqlDataAdapter(sqlcmd);
sqlcmd.CommandText = "select * from Resources";
adpt.Fill(resouceTable);
sqlcmd.CommandText = "select * from Task";
adpt.Fill(taskTabel);
sqlcmd.CommandText = "select * from TaskDependencies";
adpt.Fill(dependenceTable);
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
connection.Close();
}
}
}
//绑定数据
this.schedulerStorage1.Appointments.DataSource = taskTabel;
this.schedulerStorage1.AppointmentDependencies.DataSource = dependenceTable;
this.schedulerStorage1.Resources.DataSource = resouceTable;
}
private object Id = 0;
/// <summary>
/// 添加任务
/// </summary>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
/// <param name="sender"></param>
/// <param name="e"></param>
private void schedulerStorage1_AppointmentsInserted(object sender, PersistentObjectsEventArgs e)
{
string connectionStr = ReadConfig();
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
SqlDataAdapter adpt = new SqlDataAdapter(sqlcmd);
Appointment apt = (Appointment)e.Objects[0];
DataRowView rowview = apt.GetRow(this.schedulerStorage1) as DataRowView;
DataRow row = rowview.Row;
//sqlcmd.Parameters.Add("@@indentity", SqlDbType.Int);
sqlcmd.CommandText = @"insert into Task(ResourceId,Subject,Description,StartTime,EndTime,AllDay,Label,Location," + "PercentComplete,ReCurrenceInfo,ReminderInfo,EventType)values('" + row["ResourceId"] + "" + "','" + row["Subject"] + "" + "','" + row["Description"] + "" + "','" +
row["StartTime"] + "" + "','" + row["EndTime"] + "" + "','" + row["AllDay"] + "" + "','" + row["Label"] + "" + "','" + row["Location"] + "" + "','" + row["PercentComplete"] + "" + "','" + row["ReCurrenceInfo"] + "" + "','" + row["ReminderInfo"] + "" + "','" + row["EventType"] + "" + "'" + ");Select @@identity";
try
{
//返回添加数据自增Id
Id = sqlcmd.ExecuteScalar();
if (Id != null)
{
sqlcmd.CommandText = @"update Resources set Progress='" + row["PercentComplete"] + "%'" + " " + "where Id='" + row["ResourceId"] + "'";
sqlcmd.ExecuteNonQuery();
MessageBox.Show("添加成功");
}
else
{
MessageBox.Show("添加失败");
}
}
catch (Exception ex)
{
throw ex;
MessageBox.Show(ex.Message);
}
finally
{
connection.Close();
//(网上也存在此问题)由于这里会存在刚添加的数据删除修改取不到Id,所以赋值一次ID
this.schedulerStorage1.SetAppointmentId((Appointment)e.Objects[0], Id);
}
}
}
}
/// <summary>
/// 删除任务
/// </summary>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
/// <param name="sender"></param>
/// <param name="e"></param>
private void schedulerStorage1_AppointmentsDeleted(object sender, PersistentObjectsEventArgs e)
{
string connectionStr = ReadConfig();
Appointment apt = (Appointment)e.Objects[0];
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
if (apt.Id != null)
{
using (SqlCommand sqlcmd = connection.CreateCommand())
{
string sql = string.Format("delete from Task where Id={0}", apt.Id);
sqlcmd.CommandText = sql;
var a = sqlcmd.ExecuteNonQuery();
try
{
if (a > 0)
{
MessageBox.Show("删除成功");
sqlcmd.CommandText = @"update Resources set Progress='" + 0 + "' " + "where Id=(select ResourceId from Task where Id=" + apt.Id + ")";
sqlcmd.ExecuteNonQuery();
}
else
{
MessageBox.Show("删除失败");
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
connection.Close();
}
}
}
}
}
/// <summary>
/// 更改任务
/// </summary>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
/// <param name="sender"></param>
/// <param name="e"></param>
private void schedulerStorage1_AppointmentsChanged(object sender, PersistentObjectsEventArgs e)
{
string connectionStr = ReadConfig();
Appointment apt = (Appointment)e.Objects[0];
//ArrayList Sets = new ArrayList();
DataRowView rowview = apt.GetRow(this.schedulerStorage1) as DataRowView;
DataRow row = rowview.Row;
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
if (apt.Id != null)
{
sqlcmd.CommandText = @"update Task set ResourceId='" + row["ResourceId"] + "',Subject='" + row["Subject"] + "',Description='" + row["Description"] + "',StartTime='" + row["StartTime"] + "',EndTime='" + row["EndTime"] + "',AllDay='" + row["AllDay"] + "',Label='" + row["Label"] + "',Location='" + row["Location"]
+ "',PercentComplete='" + row["PercentComplete"] + "',ReminderInfo='" + row["ReminderInfo"] + "',EventType='" + row["EventType"] + "' " + "where Id=" + apt.Id;
try
{
var a = sqlcmd.ExecuteNonQuery();
if (a > 0)
{
sqlcmd.CommandText = @"update Resources set Progress='" + row["PercentComplete"] + "%'" + " " + "where Id='" + row["ResourceId"] + "'";
var z = sqlcmd.ExecuteNonQuery();
if (z > 0) MessageBox.Show("更改成功");
}
else
{
MessageBox.Show("更改失败");
}
}
catch (Exception ex)
{
throw ex;
}
finally
{
connection.Close();
}
}
}
}
}
/// <summary>
/// 点击树节点跳转到对应任务
/// </summary>
/// 创建人:姜棚
/// 创建日期:2017-09-13
/// 修改人:
/// 修改日期:
/// 修改备注:无
/// <param name="sender"></param>
/// <param name="e"></param>
private void resourcesTree1_FocusedNodeChanged(object sender, DevExpress.XtraTreeList.FocusedNodeChangedEventArgs e)
{
DataTable dt = new DataTable();
string connectionStr = ReadConfig();
using (SqlConnection connection = new SqlConnection(connectionStr))
{
var a = e.Node.GetValue("Description").ToString();
var b = e.Node.GetValue("OrderId").ToString();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
SqlDataAdapter adpt = new SqlDataAdapter(sqlcmd);
sqlcmd.CommandText = String.Format(@"select a.StartTime ,a.ResourceId from Task a where a.ResourceId=(select b.Id from Resources b where b.Description='{0}' and b.OrderId='{1}');", a, b);
adpt.Fill(dt);
if (dt.Rows.Count > 0)
{
var startime = dt.Rows[0]["StartTime"];
this.schedulerControl1.Start = (DateTime)startime;
}
}
}
}
private object AppointmentDependenciesId = 0;
private void schedulerStorage1_AppointmentDependenciesInserted(object sender, PersistentObjectsEventArgs e)
{
AppointmentDependency apt = (AppointmentDependency)e.Objects[0];
string connectionStr = ReadConfig();
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
sqlcmd.CommandText = @"insert into TaskDependencies(Parent,Dependent,Type)values(" + apt.ParentId + "," + apt.DependentId + ",'" + apt.Type + "'" + ")";
AppointmentDependenciesId = sqlcmd.ExecuteScalar();
if (AppointmentDependenciesId != null)
{
//this.schedulerStorage1.SetAppointmentDependencyFactory ((AppointmentDependency)e.Objects[0], AppointmentDependenciesId);
}
else
{
MessageBox.Show("依赖不正确");
}
}
}
}
private void schedulerStorage1_AppointmentDependenciesChanged(object sender, PersistentObjectsEventArgs e)
{
AppointmentDependency apt = (AppointmentDependency)e.Objects[0];
string connectionStr = ReadConfig();
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
sqlcmd.CommandText = @"update TaskDependencies set Type='" + apt.Type + "' " + "where Parent=" + apt.ParentId + "and Dependent=" + apt.DependentId;
var a = sqlcmd.ExecuteNonQuery();
if (a > 0)
{
MessageBox.Show("依赖项更改成功");
}
else
{
}
}
}
}
private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
Settings.Default.year_scale = this.schedulerControl1.Views.GanttView.Scales[2].Enabled;
Settings.Default.month_scale = this.schedulerControl1.Views.GanttView.Scales[1].Enabled;
Settings.Default.date_scale = this.schedulerControl1.Views.GanttView.Scales[0].Enabled;
Settings.Default.week_scale = this.schedulerControl1.Views.GanttView.Scales[2].Enabled;
Settings.Default.Save();
}
private void schedulerStorage1_AppointmentDependenciesDeleted(object sender, PersistentObjectsEventArgs e)
{
AppointmentDependency apt = (AppointmentDependency)e.Objects[0];
string connectionStr = ReadConfig();
using (SqlConnection connection = new SqlConnection(connectionStr))
{
connection.Open();
using (SqlCommand sqlcmd = connection.CreateCommand())
{
sqlcmd.CommandText = string.Format("delete from TaskDependencies where Parent={0} and Dependent={1}", apt.ParentId, apt.DependentId);
var a = sqlcmd.ExecuteNonQuery();
if (a > 0)
{
MessageBox.Show("删除成功");
}
else
{
MessageBox.Show("删除失败");
}
}
}
}
//private void schedulerControl1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
// {
// //对日程的右键菜单进行修改
// SchedulerControl control = this.schedulerControl1;
// if (e.Menu.Id == DevExpress.XtraScheduler.SchedulerMenuItemId.DefaultMenu)
// {
// //隐藏【视图更改为】菜单
// SchedulerPopupMenu itemChangeViewTo = e.Menu.GetPopupMenuById(SchedulerMenuItemId.SwitchViewMenu);
// itemChangeViewTo.Visible = false;
// //删除【新建所有当天事件】菜单
// e.Menu.RemoveMenuItem(SchedulerMenuItemId.NewAllDayEvent);
// //设置【新建定期日程安排】菜单为不可用
// e.Menu.DisableMenuItem(SchedulerMenuItemId.NewRecurringAppointment);
// //改名【新建日程安排】菜单为自定义名称
// SchedulerMenuItem item = e.Menu.GetMenuItemById(SchedulerMenuItemId.NewAppointment);
// if (item != null) item.Caption = "新建一个计划";
// //创建一个新项,用内置的命令
// ISchedulerCommandFactoryService service =
// (ISchedulerCommandFactoryService)control.GetService(typeof(ISchedulerCommandFactoryService));
// SchedulerCommand cmd = service.CreateCommand(SchedulerCommandId.PrintPreview);//打印预览
// SchedulerMenuItemCommandWinAdapter menuItemCommandAdapter = new SchedulerMenuItemCommandWinAdapter(cmd);
// DXMenuItem menuItem = (DXMenuItem)menuItemCommandAdapter.CreateMenuItem();
// menuItem.BeginGroup = true;
// e.Menu.Items.Add(menuItem);
// //创建一个新的自定义事件菜单
// DXMenuItem menuTest = new SchedulerMenuItem("测试菜单");
// menuTest.Click += menuItem2_Click;
// menuTest.BeginGroup = true;
// e.Menu.Items.Add(menuTest);
// }
// }
/// <summary>
/// 图片处理
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
void menupicture_Click(object sender, EventArgs e)
{
MessageBox.Show("ok");
}
private object CurrentId;
/// <summary>
/// 右键添加图片菜单
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void schedulerControl1_PopupMenuShowing(object sender, PopupMenuShowingEventArgs e)
{
//对日程的右键菜单进行修改
SchedulerControl control = this.schedulerControl1;
CurrentId = control.SelectedResource.Id;
if (e.Menu.Id == DevExpress.XtraScheduler.SchedulerMenuItemId.AppointmentMenu)
{
//创建一个新项,用内置的命令
ISchedulerCommandFactoryService service =
(ISchedulerCommandFactoryService)control.GetService(typeof(ISchedulerCommandFactoryService));
//创建一个新的自定义事件菜单
DXMenuItem menupicture = new SchedulerMenuItem("链接图片");
menupicture.Click += menupicture_Click;
menupicture.BeginGroup = true;
e.Menu.Items.Add(menupicture);
}
}
}
}
+123
View File
@@ -0,0 +1,123 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:import namespace="http://www.w3.org/XML/1998/namespace" />
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" use="required" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
<xsd:attribute ref="xml:space" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<metadata name="schedulerStorage1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
<value>17, 17</value>
</metadata>
</root>
@@ -0,0 +1,145 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{60029A4A-0EEA-4677-917C-4B485A3104A0}</ProjectGuid>
<OutputType>WinExe</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Gantts</RootNamespace>
<AssemblyName>Gantts</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>Client</TargetFrameworkProfile>
<FileAlignment>512</FileAlignment>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<IsWebBootstrapper>false</IsWebBootstrapper>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>bin\Debug\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<ItemGroup>
<Reference Include="DevExpress.Data.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v13.1.Core, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.SpellChecker.v13.1.Core, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraPrinting.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraLayout.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1.Reporting.Extensions, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1.Core, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1.Extensions, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraSpellChecker.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraTreeList.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="PresentationCore" />
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Core" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="UIAutomationClient" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="Form1.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="Form1.Designer.cs">
<DependentUpon>Form1.cs</DependentUpon>
</Compile>
<Compile Include="Program.cs" />
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="Form1.resx">
<DependentUpon>Form1.cs</DependentUpon>
</EmbeddedResource>
<EmbeddedResource Include="Properties\licenses.licx" />
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
</Compile>
<None Include="app.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 Client Profile %28x86 和 x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
+22
View File
@@ -0,0 +1,22 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;
namespace Gantts
{
static class Program
{
/// <summary>
/// 应用程序的主入口点。
/// </summary>
[STAThread]
static void Main()
{
System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CN");
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
}
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的常规信息通过以下
// 特性集控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("Gantts")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Gantts")]
[assembly: AssemblyCopyright("Copyright © 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 使此程序集中的类型
// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,
// 则将该类型上的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("0925228d-724b-40d0-a1e9-f5a733e34195")]
// 程序集的版本信息由下面四个值组成:
//
// 主版本
// 次版本
// 内部版本号
// 修订号
//
// 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值,
// 方法是按如下所示使用“*”:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
@@ -0,0 +1,71 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本: 4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace Gantts.Properties
{
/// <summary>
/// 一个强类型的资源类,用于查找本地化的字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources
{
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources()
{
}
/// <summary>
/// 返回此类使用的、缓存的 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager
{
get
{
if ((resourceMan == null))
{
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Gantts.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 为所有资源查找重写当前线程的 CurrentUICulture 属性,
/// 方法是使用此强类型资源类。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture
{
get
{
return resourceCulture;
}
set
{
resourceCulture = value;
}
}
}
}
@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
@@ -0,0 +1,74 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace Gantts.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool year_scale {
get {
return ((bool)(this["year_scale"]));
}
set {
this["year_scale"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool week_scale {
get {
return ((bool)(this["week_scale"]));
}
set {
this["week_scale"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool month_scale {
get {
return ((bool)(this["month_scale"]));
}
set {
this["month_scale"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool date_scale {
get {
return ((bool)(this["date_scale"]));
}
set {
this["date_scale"] = value;
}
}
}
}
@@ -0,0 +1,18 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="Gantts.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="year_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="week_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="month_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="date_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
</Settings>
</SettingsFile>
@@ -0,0 +1,2 @@
DevExpress.Patch.InMemoryPatch, DevExpress.Patch.Common, Version=7.0.0.0, Culture=neutral, PublicKeyToken=7fc7bfca2443de66
DevExpress.XtraScheduler.SchedulerControl, DevExpress.XtraScheduler.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a
+24
View File
@@ -0,0 +1,24 @@
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" >
<section name="Gantts.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false" />
</sectionGroup>
</configSections>
<userSettings>
<Gantts.Properties.Settings>
<setting name="year_scale" serializeAs="String">
<value>False</value>
</setting>
<setting name="week_scale" serializeAs="String">
<value>False</value>
</setting>
<setting name="month_scale" serializeAs="String">
<value>False</value>
</setting>
<setting name="date_scale" serializeAs="String">
<value>False</value>
</setting>
</Gantts.Properties.Settings>
</userSettings>
</configuration>
+181
View File
@@ -0,0 +1,181 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<PropertyGroup>
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
<Platform Condition=" '$(Platform)' == '' ">x86</Platform>
<ProductVersion>8.0.30703</ProductVersion>
<SchemaVersion>2.0</SchemaVersion>
<ProjectGuid>{60029A4A-0EEA-4677-917C-4B485A3104A0}</ProjectGuid>
<OutputType>Library</OutputType>
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Lskj.Gantts</RootNamespace>
<AssemblyName>Lskj.Gantts</AssemblyName>
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
<TargetFrameworkProfile>
</TargetFrameworkProfile>
<FileAlignment>512</FileAlignment>
<IsWebBootstrapper>false</IsWebBootstrapper>
<PublishUrl>publish\</PublishUrl>
<Install>true</Install>
<InstallFrom>Disk</InstallFrom>
<UpdateEnabled>false</UpdateEnabled>
<UpdateMode>Foreground</UpdateMode>
<UpdateInterval>7</UpdateInterval>
<UpdateIntervalUnits>Days</UpdateIntervalUnits>
<UpdatePeriodically>false</UpdatePeriodically>
<UpdateRequired>false</UpdateRequired>
<MapFileExtensions>true</MapFileExtensions>
<ApplicationRevision>0</ApplicationRevision>
<ApplicationVersion>1.0.0.%2a</ApplicationVersion>
<UseApplicationTrust>false</UseApplicationTrust>
<BootstrapperEnabled>true</BootstrapperEnabled>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugSymbols>true</DebugSymbols>
<DebugType>full</DebugType>
<Optimize>false</Optimize>
<OutputPath>..\..\..\publish\lib\</OutputPath>
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|x86' ">
<PlatformTarget>x86</PlatformTarget>
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\Release\</OutputPath>
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
</PropertyGroup>
<PropertyGroup>
<StartupObject />
</PropertyGroup>
<ItemGroup>
<Reference Include="CommonLib, Version=1.0.0.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>bin\Debug\CommonLib.dll</HintPath>
</Reference>
<Reference Include="ControlLib">
<HintPath>..\..\..\引用DLL\ControlLib.dll</HintPath>
</Reference>
<Reference Include="DevExpress.Data.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Printing.v13.1.Core, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.SpellChecker.v13.1.Core, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.Utils.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraBars.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraEditors.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraGrid.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\publish\DevExpress.XtraGrid.v13.1.dll</HintPath>
</Reference>
<Reference Include="DevExpress.XtraPrinting.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraLayout.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1.Reporting.Extensions, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1.Core, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraScheduler.v13.1.Extensions, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a, processorArchitecture=MSIL" />
<Reference Include="DevExpress.XtraSpellChecker.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="DevExpress.XtraTreeList.v13.1, Version=13.1.5.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a" />
<Reference Include="Dxper.LocalizationCHS.Win.v13.1.5, Version=13.1.5.0, Culture=neutral, processorArchitecture=MSIL">
<SpecificVersion>False</SpecificVersion>
<HintPath>..\..\..\引用DLL\Dxper.LocalizationCHS.Win.v13.1.5.dll</HintPath>
</Reference>
<Reference Include="Lskj.Common">
<HintPath>..\..\..\引用DLL\Lskj.Common.dll</HintPath>
</Reference>
<Reference Include="Lskj.DevFx">
<HintPath>..\..\..\引用DLL\Lskj.DevFx.dll</HintPath>
</Reference>
<Reference Include="Lskj.Excel">
<HintPath>..\..\..\引用DLL\Lskj.Excel.dll</HintPath>
</Reference>
<Reference Include="Lskj.MyControl">
<HintPath>..\..\..\引用DLL\Lskj.MyControl.dll</HintPath>
</Reference>
<Reference Include="Lskj.PubUtils">
<HintPath>..\..\..\引用DLL\Lskj.PubUtils.dll</HintPath>
</Reference>
<Reference Include="PresentationCore" />
<Reference Include="System" />
<Reference Include="System.ComponentModel.DataAnnotations" />
<Reference Include="System.Core" />
<Reference Include="System.Data.Linq" />
<Reference Include="System.Runtime.Remoting" />
<Reference Include="System.Xml.Linq" />
<Reference Include="System.Data.DataSetExtensions" />
<Reference Include="Microsoft.CSharp" />
<Reference Include="System.Data" />
<Reference Include="System.Deployment" />
<Reference Include="System.Drawing" />
<Reference Include="System.Windows.Forms" />
<Reference Include="System.Xml" />
<Reference Include="UIAutomationClient" />
<Reference Include="WindowsBase" />
</ItemGroup>
<ItemGroup>
<Compile Include="DllBaseClass.cs" />
<Compile Include="FrmMain.cs">
<SubType>Form</SubType>
</Compile>
<Compile Include="FrmMain.Designer.cs">
<DependentUpon>FrmMain.cs</DependentUpon>
</Compile>
<Compile Include="Properties\AssemblyInfo.cs" />
<EmbeddedResource Include="FrmMain.resx">
<DependentUpon>FrmMain.cs</DependentUpon>
<SubType>Designer</SubType>
</EmbeddedResource>
<EmbeddedResource Include="Properties\Resources.resx">
<Generator>ResXFileCodeGenerator</Generator>
<LastGenOutput>Resources.Designer.cs</LastGenOutput>
<SubType>Designer</SubType>
</EmbeddedResource>
<Compile Include="Properties\Resources.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Resources.resx</DependentUpon>
<DesignTime>True</DesignTime>
</Compile>
<None Include="app.config" />
<None Include="Properties\Settings.settings">
<Generator>SettingsSingleFileGenerator</Generator>
<LastGenOutput>Settings.Designer.cs</LastGenOutput>
</None>
<Compile Include="Properties\Settings.Designer.cs">
<AutoGen>True</AutoGen>
<DependentUpon>Settings.settings</DependentUpon>
<DesignTimeSharedInput>True</DesignTimeSharedInput>
</Compile>
</ItemGroup>
<ItemGroup>
<BootstrapperPackage Include=".NETFramework,Version=v4.0,Profile=Client">
<Visible>False</Visible>
<ProductName>Microsoft .NET Framework 4 Client Profile %28x86 和 x64%29</ProductName>
<Install>true</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Client.3.5">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1 Client Profile</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Net.Framework.3.5.SP1">
<Visible>False</Visible>
<ProductName>.NET Framework 3.5 SP1</ProductName>
<Install>false</Install>
</BootstrapperPackage>
<BootstrapperPackage Include="Microsoft.Windows.Installer.3.1">
<Visible>False</Visible>
<ProductName>Windows Installer 3.1</ProductName>
<Install>true</Install>
</BootstrapperPackage>
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<!-- To modify your build process, add your task inside one of the targets below and uncomment it.
Other similar extension points exist, see Microsoft.Common.targets.
<Target Name="BeforeBuild">
</Target>
<Target Name="AfterBuild">
</Target>
-->
</Project>
@@ -0,0 +1,36 @@
using System.Reflection;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
// 有关程序集的常规信息通过以下
// 特性集控制。更改这些特性值可修改
// 与程序集关联的信息。
[assembly: AssemblyTitle("Gantts")]
[assembly: AssemblyDescription("")]
[assembly: AssemblyConfiguration("")]
[assembly: AssemblyCompany("")]
[assembly: AssemblyProduct("Gantts")]
[assembly: AssemblyCopyright("Copyright © 2017")]
[assembly: AssemblyTrademark("")]
[assembly: AssemblyCulture("")]
// 将 ComVisible 设置为 false 使此程序集中的类型
// 对 COM 组件不可见。如果需要从 COM 访问此程序集中的类型,
// 则将该类型上的 ComVisible 特性设置为 true。
[assembly: ComVisible(false)]
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
[assembly: Guid("0925228d-724b-40d0-a1e9-f5a733e34195")]
// 程序集的版本信息由下面四个值组成:
//
// 主版本
// 次版本
// 内部版本号
// 修订号
//
// 可以指定所有这些值,也可以使用“内部版本号”和“修订号”的默认值,
// 方法是按如下所示使用“*”:
// [assembly: AssemblyVersion("1.0.*")]
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
+63
View File
@@ -0,0 +1,63 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace Lskj.Gantts.Properties {
using System;
/// <summary>
/// 一个强类型的资源类,用于查找本地化的字符串等。
/// </summary>
// 此类是由 StronglyTypedResourceBuilder
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
// (以 /str 作为命令选项),或重新生成 VS 项目。
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "4.0.0.0")]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
internal class Resources {
private static global::System.Resources.ResourceManager resourceMan;
private static global::System.Globalization.CultureInfo resourceCulture;
[global::System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Performance", "CA1811:AvoidUncalledPrivateCode")]
internal Resources() {
}
/// <summary>
/// 返回此类使用的缓存的 ResourceManager 实例。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Resources.ResourceManager ResourceManager {
get {
if (object.ReferenceEquals(resourceMan, null)) {
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("Lskj.Gantts.Properties.Resources", typeof(Resources).Assembly);
resourceMan = temp;
}
return resourceMan;
}
}
/// <summary>
/// 使用此强类型资源类,为所有资源查找
/// 重写当前线程的 CurrentUICulture 属性。
/// </summary>
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
internal static global::System.Globalization.CultureInfo Culture {
get {
return resourceCulture;
}
set {
resourceCulture = value;
}
}
}
}
@@ -0,0 +1,117 @@
<?xml version="1.0" encoding="utf-8"?>
<root>
<!--
Microsoft ResX Schema
Version 2.0
The primary goals of this format is to allow a simple XML format
that is mostly human readable. The generation and parsing of the
various data types are done through the TypeConverter classes
associated with the data types.
Example:
... ado.net/XML headers & schema ...
<resheader name="resmimetype">text/microsoft-resx</resheader>
<resheader name="version">2.0</resheader>
<resheader name="reader">System.Resources.ResXResourceReader, System.Windows.Forms, ...</resheader>
<resheader name="writer">System.Resources.ResXResourceWriter, System.Windows.Forms, ...</resheader>
<data name="Name1"><value>this is my long string</value><comment>this is a comment</comment></data>
<data name="Color1" type="System.Drawing.Color, System.Drawing">Blue</data>
<data name="Bitmap1" mimetype="application/x-microsoft.net.object.binary.base64">
<value>[base64 mime encoded serialized .NET Framework object]</value>
</data>
<data name="Icon1" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
<value>[base64 mime encoded string representing a byte array form of the .NET Framework object]</value>
<comment>This is a comment</comment>
</data>
There are any number of "resheader" rows that contain simple
name/value pairs.
Each data row contains a name, and value. The row also contains a
type or mimetype. Type corresponds to a .NET class that support
text/value conversion through the TypeConverter architecture.
Classes that don't support this are serialized and stored with the
mimetype set.
The mimetype is used for serialized objects, and tells the
ResXResourceReader how to depersist the object. This is currently not
extensible. For a given mimetype the value must be set accordingly:
Note - application/x-microsoft.net.object.binary.base64 is the format
that the ResXResourceWriter will generate, however the reader can
read any of the formats listed below.
mimetype: application/x-microsoft.net.object.binary.base64
value : The object must be serialized with
: System.Serialization.Formatters.Binary.BinaryFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.soap.base64
value : The object must be serialized with
: System.Runtime.Serialization.Formatters.Soap.SoapFormatter
: and then encoded with base64 encoding.
mimetype: application/x-microsoft.net.object.bytearray.base64
value : The object must be serialized into a byte array
: using a System.ComponentModel.TypeConverter
: and then encoded with base64 encoding.
-->
<xsd:schema id="root" xmlns="" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata">
<xsd:element name="root" msdata:IsDataSet="true">
<xsd:complexType>
<xsd:choice maxOccurs="unbounded">
<xsd:element name="metadata">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" />
<xsd:attribute name="type" type="xsd:string" />
<xsd:attribute name="mimetype" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="assembly">
<xsd:complexType>
<xsd:attribute name="alias" type="xsd:string" />
<xsd:attribute name="name" type="xsd:string" />
</xsd:complexType>
</xsd:element>
<xsd:element name="data">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
<xsd:element name="comment" type="xsd:string" minOccurs="0" msdata:Ordinal="2" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" msdata:Ordinal="1" />
<xsd:attribute name="type" type="xsd:string" msdata:Ordinal="3" />
<xsd:attribute name="mimetype" type="xsd:string" msdata:Ordinal="4" />
</xsd:complexType>
</xsd:element>
<xsd:element name="resheader">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="value" type="xsd:string" minOccurs="0" msdata:Ordinal="1" />
</xsd:sequence>
<xsd:attribute name="name" type="xsd:string" use="required" />
</xsd:complexType>
</xsd:element>
</xsd:choice>
</xsd:complexType>
</xsd:element>
</xsd:schema>
<resheader name="resmimetype">
<value>text/microsoft-resx</value>
</resheader>
<resheader name="version">
<value>2.0</value>
</resheader>
<resheader name="reader">
<value>System.Resources.ResXResourceReader, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
<resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader>
</root>
+84
View File
@@ -0,0 +1,84 @@
//------------------------------------------------------------------------------
// <auto-generated>
// 此代码由工具生成。
// 运行时版本:4.0.30319.42000
//
// 对此文件的更改可能会导致不正确的行为,并且如果
// 重新生成代码,这些更改将会丢失。
// </auto-generated>
//------------------------------------------------------------------------------
namespace Lskj.Gantts.Properties {
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "10.0.0.0")]
internal sealed partial class Settings : global::System.Configuration.ApplicationSettingsBase {
private static Settings defaultInstance = ((Settings)(global::System.Configuration.ApplicationSettingsBase.Synchronized(new Settings())));
public static Settings Default {
get {
return defaultInstance;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool year_scale {
get {
return ((bool)(this["year_scale"]));
}
set {
this["year_scale"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool week_scale {
get {
return ((bool)(this["week_scale"]));
}
set {
this["week_scale"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool month_scale {
get {
return ((bool)(this["month_scale"]));
}
set {
this["month_scale"] = value;
}
}
[global::System.Configuration.UserScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.DefaultSettingValueAttribute("False")]
public bool date_scale {
get {
return ((bool)(this["date_scale"]));
}
set {
this["date_scale"] = value;
}
}
[global::System.Configuration.ApplicationScopedSettingAttribute()]
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.Configuration.SpecialSettingAttribute(global::System.Configuration.SpecialSetting.ConnectionString)]
[global::System.Configuration.DefaultSettingValueAttribute("Data Source=DESKTOP-NFEF3P4;Initial Catalog=ERP_Test;Integrated Security=True")]
public string ERP_TestConnectionString {
get {
return ((string)(this["ERP_TestConnectionString"]));
}
}
}
}
@@ -0,0 +1,26 @@
<?xml version='1.0' encoding='utf-8'?>
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)" GeneratedClassNamespace="Gantts.Properties" GeneratedClassName="Settings">
<Profiles />
<Settings>
<Setting Name="year_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="week_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="month_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="date_scale" Type="System.Boolean" Scope="User">
<Value Profile="(Default)">False</Value>
</Setting>
<Setting Name="ERP_TestConnectionString" Type="(Connection string)" Scope="Application">
<DesignTimeValue Profile="(Default)">&lt;?xml version="1.0" encoding="utf-16"?&gt;
&lt;SerializableConnectionString xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"&gt;
&lt;ConnectionString&gt;Data Source=DESKTOP-NFEF3P4;Initial Catalog=ERP_Test;Integrated Security=True&lt;/ConnectionString&gt;
&lt;ProviderName&gt;System.Data.SqlClient&lt;/ProviderName&gt;
&lt;/SerializableConnectionString&gt;</DesignTimeValue>
<Value Profile="(Default)">Data Source=DESKTOP-NFEF3P4;Initial Catalog=ERP_Test;Integrated Security=True</Value>
</Setting>
</Settings>
</SettingsFile>
+27
View File
@@ -0,0 +1,27 @@
<?xml version="1.0"?>
<configuration>
<configSections>
<sectionGroup name="userSettings" type="System.Configuration.UserSettingsGroup, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
<section name="Gantts.Properties.Settings" type="System.Configuration.ClientSettingsSection, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" allowExeDefinition="MachineToLocalUser" requirePermission="false"/>
</sectionGroup>
</configSections>
<connectionStrings>
<add name="Gantts.Properties.Settings.ERP_TestConnectionString" connectionString="Data Source=DESKTOP-NFEF3P4;Initial Catalog=ERP_Test;Integrated Security=True" providerName="System.Data.SqlClient"/>
</connectionStrings>
<userSettings>
<Gantts.Properties.Settings>
<setting name="year_scale" serializeAs="String">
<value>False</value>
</setting>
<setting name="week_scale" serializeAs="String">
<value>False</value>
</setting>
<setting name="month_scale" serializeAs="String">
<value>False</value>
</setting>
<setting name="date_scale" serializeAs="String">
<value>False</value>
</setting>
</Gantts.Properties.Settings>
</userSettings>
<startup><supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.0"/></startup></configuration>