Compare commits
2 Commits
547eb55b84
...
60a4a0853b
Author | SHA1 | Date | |
---|---|---|---|
60a4a0853b | |||
31348c852e |
63
.gitattributes
vendored
Normal file
63
.gitattributes
vendored
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
###############################################################################
|
||||||
|
# Set default behavior to automatically normalize line endings.
|
||||||
|
###############################################################################
|
||||||
|
* text=auto
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Set default behavior for command prompt diff.
|
||||||
|
#
|
||||||
|
# This is need for earlier builds of msysgit that does not have it on by
|
||||||
|
# default for csharp files.
|
||||||
|
# Note: This is only used by command line
|
||||||
|
###############################################################################
|
||||||
|
#*.cs diff=csharp
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# Set the merge driver for project and solution files
|
||||||
|
#
|
||||||
|
# Merging from the command prompt will add diff markers to the files if there
|
||||||
|
# are conflicts (Merging from VS is not affected by the settings below, in VS
|
||||||
|
# the diff markers are never inserted). Diff markers may cause the following
|
||||||
|
# file extensions to fail to load in VS. An alternative would be to treat
|
||||||
|
# these files as binary and thus will always conflict and require user
|
||||||
|
# intervention with every merge. To do so, just uncomment the entries below
|
||||||
|
###############################################################################
|
||||||
|
#*.sln merge=binary
|
||||||
|
#*.csproj merge=binary
|
||||||
|
#*.vbproj merge=binary
|
||||||
|
#*.vcxproj merge=binary
|
||||||
|
#*.vcproj merge=binary
|
||||||
|
#*.dbproj merge=binary
|
||||||
|
#*.fsproj merge=binary
|
||||||
|
#*.lsproj merge=binary
|
||||||
|
#*.wixproj merge=binary
|
||||||
|
#*.modelproj merge=binary
|
||||||
|
#*.sqlproj merge=binary
|
||||||
|
#*.wwaproj merge=binary
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# behavior for image files
|
||||||
|
#
|
||||||
|
# image files are treated as binary by default.
|
||||||
|
###############################################################################
|
||||||
|
#*.jpg binary
|
||||||
|
#*.png binary
|
||||||
|
#*.gif binary
|
||||||
|
|
||||||
|
###############################################################################
|
||||||
|
# diff behavior for common document formats
|
||||||
|
#
|
||||||
|
# Convert binary document formats to text before diffing them. This feature
|
||||||
|
# is only available from the command line. Turn it on by uncommenting the
|
||||||
|
# entries below.
|
||||||
|
###############################################################################
|
||||||
|
#*.doc diff=astextplain
|
||||||
|
#*.DOC diff=astextplain
|
||||||
|
#*.docx diff=astextplain
|
||||||
|
#*.DOCX diff=astextplain
|
||||||
|
#*.dot diff=astextplain
|
||||||
|
#*.DOT diff=astextplain
|
||||||
|
#*.pdf diff=astextplain
|
||||||
|
#*.PDF diff=astextplain
|
||||||
|
#*.rtf diff=astextplain
|
||||||
|
#*.RTF diff=astextplain
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -30,6 +30,7 @@ x86/
|
|||||||
bld/
|
bld/
|
||||||
[Bb]in/
|
[Bb]in/
|
||||||
[Oo]bj/
|
[Oo]bj/
|
||||||
|
[Oo]ut/
|
||||||
[Ll]og/
|
[Ll]og/
|
||||||
[Ll]ogs/
|
[Ll]ogs/
|
||||||
|
|
||||||
|
216
JQSalesSummaryPanel.Designer.cs
generated
Normal file
216
JQSalesSummaryPanel.Designer.cs
generated
Normal file
@ -0,0 +1,216 @@
|
|||||||
|
namespace KellyReport_D
|
||||||
|
{
|
||||||
|
partial class JQSalesSummaryPanel
|
||||||
|
{
|
||||||
|
/// <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 组件设计器生成的代码
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 设计器支持所需的方法 - 不要修改
|
||||||
|
/// 使用代码编辑器修改此方法的内容。
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.flowLayoutPanel1 = new System.Windows.Forms.FlowLayoutPanel();
|
||||||
|
this.step1Lab = new System.Windows.Forms.Label();
|
||||||
|
this.step1DescLab = new System.Windows.Forms.Label();
|
||||||
|
this.step1NoteLab = new System.Windows.Forms.Label();
|
||||||
|
this.buttonWrapper1 = new System.Windows.Forms.Panel();
|
||||||
|
this.initForecastBtn = new System.Windows.Forms.Button();
|
||||||
|
this.flowLayoutPanel2 = new System.Windows.Forms.FlowLayoutPanel();
|
||||||
|
this.step2Lab = new System.Windows.Forms.Label();
|
||||||
|
this.step2DescLab = new System.Windows.Forms.Label();
|
||||||
|
this.buttonWrapper2 = new System.Windows.Forms.Panel();
|
||||||
|
this.importSalesBtn = new System.Windows.Forms.Button();
|
||||||
|
this.flowLayoutPanel1.SuspendLayout();
|
||||||
|
this.buttonWrapper1.SuspendLayout();
|
||||||
|
this.flowLayoutPanel2.SuspendLayout();
|
||||||
|
this.buttonWrapper2.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// flowLayoutPanel1
|
||||||
|
//
|
||||||
|
this.flowLayoutPanel1.AutoSize = true;
|
||||||
|
this.flowLayoutPanel1.Controls.Add(this.step1Lab);
|
||||||
|
this.flowLayoutPanel1.Controls.Add(this.step1DescLab);
|
||||||
|
this.flowLayoutPanel1.Controls.Add(this.step1NoteLab);
|
||||||
|
this.flowLayoutPanel1.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.flowLayoutPanel1.Location = new System.Drawing.Point(0, 0);
|
||||||
|
this.flowLayoutPanel1.Name = "flowLayoutPanel1";
|
||||||
|
this.flowLayoutPanel1.Size = new System.Drawing.Size(600, 36);
|
||||||
|
this.flowLayoutPanel1.TabIndex = 0;
|
||||||
|
//
|
||||||
|
// step1Lab
|
||||||
|
//
|
||||||
|
this.step1Lab.AutoSize = true;
|
||||||
|
this.step1Lab.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.step1Lab.Font = new System.Drawing.Font("微软雅黑", 14F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.step1Lab.Location = new System.Drawing.Point(3, 0);
|
||||||
|
this.step1Lab.Name = "step1Lab";
|
||||||
|
this.step1Lab.Size = new System.Drawing.Size(238, 36);
|
||||||
|
this.step1Lab.TabIndex = 0;
|
||||||
|
this.step1Lab.Text = "Resources.STEP1";
|
||||||
|
//
|
||||||
|
// step1DescLab
|
||||||
|
//
|
||||||
|
this.step1DescLab.AutoSize = true;
|
||||||
|
this.step1DescLab.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.step1DescLab.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.step1DescLab.Location = new System.Drawing.Point(247, 0);
|
||||||
|
this.step1DescLab.Name = "step1DescLab";
|
||||||
|
this.step1DescLab.Size = new System.Drawing.Size(244, 28);
|
||||||
|
this.step1DescLab.TabIndex = 1;
|
||||||
|
this.step1DescLab.Text = "Resources.STEP1_DESC";
|
||||||
|
//
|
||||||
|
// step1NoteLab
|
||||||
|
//
|
||||||
|
this.step1NoteLab.AutoSize = true;
|
||||||
|
this.step1NoteLab.Dock = System.Windows.Forms.DockStyle.Fill;
|
||||||
|
this.step1NoteLab.Font = new System.Drawing.Font("微软雅黑", 9F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.step1NoteLab.ForeColor = System.Drawing.Color.Firebrick;
|
||||||
|
this.step1NoteLab.Location = new System.Drawing.Point(497, 0);
|
||||||
|
this.step1NoteLab.Name = "step1NoteLab";
|
||||||
|
this.step1NoteLab.Size = new System.Drawing.Size(63, 36);
|
||||||
|
this.step1NoteLab.TabIndex = 3;
|
||||||
|
this.step1NoteLab.Text = "label1";
|
||||||
|
//
|
||||||
|
// buttonWrapper1
|
||||||
|
//
|
||||||
|
this.buttonWrapper1.AutoSize = true;
|
||||||
|
this.buttonWrapper1.Controls.Add(this.initForecastBtn);
|
||||||
|
this.buttonWrapper1.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.buttonWrapper1.Location = new System.Drawing.Point(0, 36);
|
||||||
|
this.buttonWrapper1.Margin = new System.Windows.Forms.Padding(3, 3, 3, 10);
|
||||||
|
this.buttonWrapper1.Name = "buttonWrapper1";
|
||||||
|
this.buttonWrapper1.Size = new System.Drawing.Size(600, 56);
|
||||||
|
this.buttonWrapper1.TabIndex = 5;
|
||||||
|
//
|
||||||
|
// initForecastBtn
|
||||||
|
//
|
||||||
|
this.initForecastBtn.Anchor = System.Windows.Forms.AnchorStyles.Top;
|
||||||
|
this.initForecastBtn.BackColor = System.Drawing.SystemColors.ControlLight;
|
||||||
|
this.initForecastBtn.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||||
|
this.initForecastBtn.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control;
|
||||||
|
this.initForecastBtn.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.initForecastBtn.ForeColor = System.Drawing.Color.Black;
|
||||||
|
this.initForecastBtn.Location = new System.Drawing.Point(220, 3);
|
||||||
|
this.initForecastBtn.MinimumSize = new System.Drawing.Size(0, 50);
|
||||||
|
this.initForecastBtn.Name = "initForecastBtn";
|
||||||
|
this.initForecastBtn.Size = new System.Drawing.Size(200, 50);
|
||||||
|
this.initForecastBtn.TabIndex = 2;
|
||||||
|
this.initForecastBtn.Text = "button1";
|
||||||
|
this.initForecastBtn.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// flowLayoutPanel2
|
||||||
|
//
|
||||||
|
this.flowLayoutPanel2.AutoSize = true;
|
||||||
|
this.flowLayoutPanel2.Controls.Add(this.step2Lab);
|
||||||
|
this.flowLayoutPanel2.Controls.Add(this.step2DescLab);
|
||||||
|
this.flowLayoutPanel2.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.flowLayoutPanel2.Location = new System.Drawing.Point(0, 92);
|
||||||
|
this.flowLayoutPanel2.Name = "flowLayoutPanel2";
|
||||||
|
this.flowLayoutPanel2.Size = new System.Drawing.Size(600, 36);
|
||||||
|
this.flowLayoutPanel2.TabIndex = 6;
|
||||||
|
//
|
||||||
|
// step2Lab
|
||||||
|
//
|
||||||
|
this.step2Lab.AutoSize = true;
|
||||||
|
this.step2Lab.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.step2Lab.Font = new System.Drawing.Font("微软雅黑", 14F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.step2Lab.Location = new System.Drawing.Point(3, 0);
|
||||||
|
this.step2Lab.Name = "step2Lab";
|
||||||
|
this.step2Lab.Size = new System.Drawing.Size(238, 36);
|
||||||
|
this.step2Lab.TabIndex = 1;
|
||||||
|
this.step2Lab.Text = "Resources.STEP1";
|
||||||
|
//
|
||||||
|
// step2DescLab
|
||||||
|
//
|
||||||
|
this.step2DescLab.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.step2DescLab.Font = new System.Drawing.Font("微软雅黑", 10.5F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.step2DescLab.Location = new System.Drawing.Point(247, 0);
|
||||||
|
this.step2DescLab.Name = "step2DescLab";
|
||||||
|
this.step2DescLab.Size = new System.Drawing.Size(244, 36);
|
||||||
|
this.step2DescLab.TabIndex = 2;
|
||||||
|
this.step2DescLab.Text = "Resources.STEP1_DESC";
|
||||||
|
//
|
||||||
|
// buttonWrapper2
|
||||||
|
//
|
||||||
|
this.buttonWrapper2.AutoSize = true;
|
||||||
|
this.buttonWrapper2.Controls.Add(this.importSalesBtn);
|
||||||
|
this.buttonWrapper2.Dock = System.Windows.Forms.DockStyle.Top;
|
||||||
|
this.buttonWrapper2.Location = new System.Drawing.Point(0, 128);
|
||||||
|
this.buttonWrapper2.Name = "buttonWrapper2";
|
||||||
|
this.buttonWrapper2.Size = new System.Drawing.Size(600, 56);
|
||||||
|
this.buttonWrapper2.TabIndex = 7;
|
||||||
|
//
|
||||||
|
// importSalesBtn
|
||||||
|
//
|
||||||
|
this.importSalesBtn.Anchor = System.Windows.Forms.AnchorStyles.Top;
|
||||||
|
this.importSalesBtn.BackColor = System.Drawing.SystemColors.ControlLight;
|
||||||
|
this.importSalesBtn.Cursor = System.Windows.Forms.Cursors.Hand;
|
||||||
|
this.importSalesBtn.FlatAppearance.MouseOverBackColor = System.Drawing.SystemColors.Control;
|
||||||
|
this.importSalesBtn.Font = new System.Drawing.Font("微软雅黑", 12F, System.Drawing.FontStyle.Regular, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
|
||||||
|
this.importSalesBtn.ForeColor = System.Drawing.Color.Black;
|
||||||
|
this.importSalesBtn.Location = new System.Drawing.Point(220, 3);
|
||||||
|
this.importSalesBtn.MinimumSize = new System.Drawing.Size(0, 50);
|
||||||
|
this.importSalesBtn.Name = "importSalesBtn";
|
||||||
|
this.importSalesBtn.Size = new System.Drawing.Size(200, 50);
|
||||||
|
this.importSalesBtn.TabIndex = 2;
|
||||||
|
this.importSalesBtn.Text = "button1";
|
||||||
|
this.importSalesBtn.UseVisualStyleBackColor = true;
|
||||||
|
//
|
||||||
|
// JQSalesSummaryPanel
|
||||||
|
//
|
||||||
|
this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
|
||||||
|
this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
|
||||||
|
this.AutoSize = true;
|
||||||
|
this.Controls.Add(this.buttonWrapper2);
|
||||||
|
this.Controls.Add(this.flowLayoutPanel2);
|
||||||
|
this.Controls.Add(this.buttonWrapper1);
|
||||||
|
this.Controls.Add(this.flowLayoutPanel1);
|
||||||
|
this.Name = "JQSalesSummaryPanel";
|
||||||
|
this.Size = new System.Drawing.Size(600, 184);
|
||||||
|
this.Resize += new System.EventHandler(this.JQSalesSummaryPanel_Resize);
|
||||||
|
this.flowLayoutPanel1.ResumeLayout(false);
|
||||||
|
this.flowLayoutPanel1.PerformLayout();
|
||||||
|
this.buttonWrapper1.ResumeLayout(false);
|
||||||
|
this.flowLayoutPanel2.ResumeLayout(false);
|
||||||
|
this.flowLayoutPanel2.PerformLayout();
|
||||||
|
this.buttonWrapper2.ResumeLayout(false);
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
this.PerformLayout();
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel1;
|
||||||
|
private System.Windows.Forms.Label step1Lab;
|
||||||
|
private System.Windows.Forms.Label step1DescLab;
|
||||||
|
private System.Windows.Forms.Label step1NoteLab;
|
||||||
|
private System.Windows.Forms.Panel buttonWrapper1;
|
||||||
|
private System.Windows.Forms.Button initForecastBtn;
|
||||||
|
private System.Windows.Forms.FlowLayoutPanel flowLayoutPanel2;
|
||||||
|
private System.Windows.Forms.Label step2Lab;
|
||||||
|
private System.Windows.Forms.Label step2DescLab;
|
||||||
|
private System.Windows.Forms.Panel buttonWrapper2;
|
||||||
|
private System.Windows.Forms.Button importSalesBtn;
|
||||||
|
}
|
||||||
|
}
|
57
JQSalesSummaryPanel.cs
Normal file
57
JQSalesSummaryPanel.cs
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
using KellyReport_D.Properties;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.ComponentModel;
|
||||||
|
using System.Data;
|
||||||
|
using System.Drawing;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Threading.Tasks;
|
||||||
|
using System.Windows.Forms;
|
||||||
|
|
||||||
|
namespace KellyReport_D
|
||||||
|
{
|
||||||
|
public partial class JQSalesSummaryPanel : UserControl
|
||||||
|
{
|
||||||
|
public JQSalesSummaryPanel()
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
override
|
||||||
|
protected void OnLoad(EventArgs e)
|
||||||
|
{
|
||||||
|
base.OnLoad(e);
|
||||||
|
this.step1Lab.Text = Resources.Step1;
|
||||||
|
this.step1DescLab.Text = Resources.STEP1_DESC;
|
||||||
|
this.step1NoteLab.Text = Resources.STEP1_NOTE;
|
||||||
|
this.initForecastBtn.Text = Resources.INIT_FORECAST;
|
||||||
|
|
||||||
|
this.step2Lab.Text = Resources.Step2;
|
||||||
|
this.step2DescLab.Text = Resources.STEP2_DESC;
|
||||||
|
this.importSalesBtn.Text = Resources.IMPORT_SALES;
|
||||||
|
}
|
||||||
|
|
||||||
|
private void panel1_Resize(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
initForecastBtn.Left = (buttonWrapper1.ClientSize.Width - initForecastBtn.Width) / 2;
|
||||||
|
initForecastBtn.Top = (buttonWrapper1.ClientSize.Height - initForecastBtn.Height) / 2; // 可选:垂直居中
|
||||||
|
}
|
||||||
|
|
||||||
|
private void JQSalesSummaryPanel_Resize(object sender, EventArgs e)
|
||||||
|
{
|
||||||
|
//this.step2DescLab.Size = new Size(this.Width, 65);
|
||||||
|
int width = this.Width;
|
||||||
|
// 预留内边距
|
||||||
|
int padding = this.step2DescLab.Padding.Vertical + 4;
|
||||||
|
// 计算文本所需高度
|
||||||
|
Size textSize = TextRenderer.MeasureText(
|
||||||
|
this.step2DescLab.Text,
|
||||||
|
this.step2DescLab.Font,
|
||||||
|
new Size(width, int.MaxValue),
|
||||||
|
TextFormatFlags.WordBreak
|
||||||
|
);
|
||||||
|
step2DescLab.Size = new Size(width, textSize.Height + padding);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
120
JQSalesSummaryPanel.resx
Normal file
120
JQSalesSummaryPanel.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?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>
|
||||||
|
</root>
|
298
KellyReport_D.csproj
Normal file
298
KellyReport_D.csproj
Normal file
@ -0,0 +1,298 @@
|
|||||||
|
<Project ToolsVersion="17.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||||
|
<Import Project="$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props" Condition="Exists('$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props')" />
|
||||||
|
<!--
|
||||||
|
This section defines project-level properties.
|
||||||
|
|
||||||
|
AssemblyName
|
||||||
|
Name of the output assembly.
|
||||||
|
Configuration
|
||||||
|
Specifies a default value for debug.
|
||||||
|
OutputType
|
||||||
|
Must be "Library" for VSTO.
|
||||||
|
Platform
|
||||||
|
Specifies what CPU the output of this project can run on.
|
||||||
|
NoStandardLibraries
|
||||||
|
Set to "false" for VSTO.
|
||||||
|
RootNamespace
|
||||||
|
In C#, this specifies the namespace given to new files. In VB, all objects are
|
||||||
|
wrapped in this namespace at runtime.
|
||||||
|
-->
|
||||||
|
<PropertyGroup>
|
||||||
|
<ProjectTypeGuids>{BAA0C2D2-18E2-41B9-852F-F413020CAA33};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
|
||||||
|
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||||
|
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||||
|
<ProjectGuid>{FEB9B0D1-503E-42D5-9D86-4F15DDCF8600}</ProjectGuid>
|
||||||
|
<OutputType>Library</OutputType>
|
||||||
|
<NoStandardLibraries>false</NoStandardLibraries>
|
||||||
|
<RootNamespace>KellyReport_D</RootNamespace>
|
||||||
|
<AssemblyName>KellyReport_D</AssemblyName>
|
||||||
|
<TargetFrameworkVersion>v4.8.1</TargetFrameworkVersion>
|
||||||
|
<DefineConstants>VSTO40;UseOfficeInterop</DefineConstants>
|
||||||
|
<ResolveComReferenceSilent>true</ResolveComReferenceSilent>
|
||||||
|
<IsWebBootstrapper>False</IsWebBootstrapper>
|
||||||
|
<BootstrapperEnabled>true</BootstrapperEnabled>
|
||||||
|
<PublishUrl>publish\</PublishUrl>
|
||||||
|
<InstallUrl />
|
||||||
|
<TargetCulture>zh-chs</TargetCulture>
|
||||||
|
<ApplicationVersion>1.0.0.1</ApplicationVersion>
|
||||||
|
<AutoIncrementApplicationRevision>true</AutoIncrementApplicationRevision>
|
||||||
|
<UpdateEnabled>true</UpdateEnabled>
|
||||||
|
<UpdateInterval>7</UpdateInterval>
|
||||||
|
<UpdateIntervalUnits>days</UpdateIntervalUnits>
|
||||||
|
<ProductName>KellyReport_D</ProductName>
|
||||||
|
<PublisherName />
|
||||||
|
<SupportUrl />
|
||||||
|
<FriendlyName>KellyReport_D</FriendlyName>
|
||||||
|
<OfficeApplicationDescription />
|
||||||
|
<LoadBehavior>3</LoadBehavior>
|
||||||
|
</PropertyGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<BootstrapperPackage Include=".NETFramework,Version=v4.8.1">
|
||||||
|
<Visible>False</Visible>
|
||||||
|
<ProductName>Microsoft .NET Framework 4.8.1 %28x86 和 x64%29</ProductName>
|
||||||
|
<Install>true</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.VSTORuntime.4.0">
|
||||||
|
<Visible>False</Visible>
|
||||||
|
<ProductName>Microsoft Visual Studio 2010 Tools for Office Runtime %28x86 和 x64%29</ProductName>
|
||||||
|
<Install>true</Install>
|
||||||
|
</BootstrapperPackage>
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<!--
|
||||||
|
OfficeApplication
|
||||||
|
Add-in host application
|
||||||
|
-->
|
||||||
|
<OfficeApplication>Excel</OfficeApplication>
|
||||||
|
</PropertyGroup>
|
||||||
|
<!--
|
||||||
|
This section defines properties that are set when the "Debug" configuration is selected.
|
||||||
|
|
||||||
|
DebugSymbols
|
||||||
|
If "true", create symbols (.pdb). If "false", do not create symbols.
|
||||||
|
DefineConstants
|
||||||
|
Constants defined for the preprocessor.
|
||||||
|
EnableUnmanagedDebugging
|
||||||
|
If "true", starting the debugger will attach both managed and unmanaged debuggers.
|
||||||
|
Optimize
|
||||||
|
If "true", optimize the build output. If "false", do not optimize.
|
||||||
|
OutputPath
|
||||||
|
Output path of project relative to the project file.
|
||||||
|
WarningLevel
|
||||||
|
Warning level for the compiler.
|
||||||
|
-->
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||||
|
<DebugSymbols>true</DebugSymbols>
|
||||||
|
<DebugType>full</DebugType>
|
||||||
|
<Optimize>false</Optimize>
|
||||||
|
<OutputPath>bin\Debug\</OutputPath>
|
||||||
|
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
|
||||||
|
<DefineConstants>$(DefineConstants);DEBUG;TRACE</DefineConstants>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<!--
|
||||||
|
This section defines properties that are set when the "Release" configuration is selected.
|
||||||
|
|
||||||
|
DebugSymbols
|
||||||
|
If "true", create symbols (.pdb). If "false", do not create symbols.
|
||||||
|
DefineConstants
|
||||||
|
Constants defined for the preprocessor.
|
||||||
|
EnableUnmanagedDebugging
|
||||||
|
If "true", starting the debugger will attach both managed and unmanaged debuggers.
|
||||||
|
Optimize
|
||||||
|
If "true", optimize the build output. If "false", do not optimize.
|
||||||
|
OutputPath
|
||||||
|
Output path of project relative to the project file.
|
||||||
|
WarningLevel
|
||||||
|
Warning level for the compiler.
|
||||||
|
-->
|
||||||
|
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||||
|
<DebugType>pdbonly</DebugType>
|
||||||
|
<Optimize>true</Optimize>
|
||||||
|
<OutputPath>bin\Release\</OutputPath>
|
||||||
|
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
|
||||||
|
<DefineConstants>$(DefineConstants);TRACE</DefineConstants>
|
||||||
|
<WarningLevel>4</WarningLevel>
|
||||||
|
</PropertyGroup>
|
||||||
|
<!--
|
||||||
|
This section specifies references for the project.
|
||||||
|
-->
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Accessibility" />
|
||||||
|
<Reference Include="PresentationCore" />
|
||||||
|
<Reference Include="PresentationFramework" />
|
||||||
|
<Reference Include="System" />
|
||||||
|
<Reference Include="System.Data" />
|
||||||
|
<Reference Include="System.Drawing" />
|
||||||
|
<Reference Include="System.Windows.Forms" />
|
||||||
|
<Reference Include="System.Xaml" />
|
||||||
|
<Reference Include="System.Xml" />
|
||||||
|
<Reference Include="System.Core" />
|
||||||
|
<Reference Include="System.Xml.Linq" />
|
||||||
|
<Reference Include="System.Data.DataSetExtensions" />
|
||||||
|
<Reference Include="Microsoft.CSharp" />
|
||||||
|
<Reference Include="WindowsBase" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Microsoft.Office.Tools.v4.0.Framework, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.VisualStudio.Tools.Applications.Runtime, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Office.Tools, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Office.Tools.Common, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Office.Tools.Excel, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Microsoft.Office.Tools.Common.v4.0.Utilities, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
|
||||||
|
<Private>True</Private>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
<Choose>
|
||||||
|
<When Condition="$([System.String]::Copy(";$(DefineConstants);").ToLower().Contains(';useofficeinterop;')) or $([System.String]::Copy(",$(DefineConstants),").ToLower().Contains(',useofficeinterop,'))">
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="Office, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">
|
||||||
|
<Private>False</Private>
|
||||||
|
<EmbedInteropTypes>true</EmbedInteropTypes>
|
||||||
|
</Reference>
|
||||||
|
<Reference Include="Microsoft.Office.Interop.Excel, Version=15.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c">
|
||||||
|
<Private>False</Private>
|
||||||
|
<EmbedInteropTypes>true</EmbedInteropTypes>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
</When>
|
||||||
|
<Otherwise>
|
||||||
|
<ItemGroup>
|
||||||
|
<COMReference Include="Microsoft.Office.Core">
|
||||||
|
<Guid>{2DF8D04C-5BFA-101B-BDE5-00AA0044DE52}</Guid>
|
||||||
|
<VersionMajor>2</VersionMajor>
|
||||||
|
<VersionMinor>7</VersionMinor>
|
||||||
|
<Lcid>0</Lcid>
|
||||||
|
<WrapperTool>tlbimp</WrapperTool>
|
||||||
|
<Isolated>False</Isolated>
|
||||||
|
<EmbedInteropTypes>true</EmbedInteropTypes>
|
||||||
|
</COMReference>
|
||||||
|
<COMReference Include="Microsoft.Office.Interop.Excel">
|
||||||
|
<Guid>{00020813-0000-0000-C000-000000000046}</Guid>
|
||||||
|
<VersionMajor>1</VersionMajor>
|
||||||
|
<VersionMinor>8</VersionMinor>
|
||||||
|
<Lcid>0</Lcid>
|
||||||
|
<WrapperTool>tlbimp</WrapperTool>
|
||||||
|
<Isolated>False</Isolated>
|
||||||
|
<EmbedInteropTypes>true</EmbedInteropTypes>
|
||||||
|
</COMReference>
|
||||||
|
</ItemGroup>
|
||||||
|
</Otherwise>
|
||||||
|
</Choose>
|
||||||
|
<ItemGroup>
|
||||||
|
<Reference Include="stdole, Version=7.0.3300.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a">
|
||||||
|
<Private>False</Private>
|
||||||
|
</Reference>
|
||||||
|
</ItemGroup>
|
||||||
|
<!--
|
||||||
|
This section defines the user source files that are part of the project.
|
||||||
|
|
||||||
|
A "Compile" element specifies a source file to compile.
|
||||||
|
An "EmbeddedResource" element specifies an .resx file for embedded resources.
|
||||||
|
A "None" element specifies a file that is not to be passed to the compiler (for instance,
|
||||||
|
a text file or XML file).
|
||||||
|
The "AppDesigner" element specifies the directory where the application properties files
|
||||||
|
can be found.
|
||||||
|
-->
|
||||||
|
<ItemGroup>
|
||||||
|
<Compile Include="JQSalesSummaryPanel.cs">
|
||||||
|
<SubType>UserControl</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="JQSalesSummaryPanel.Designer.cs">
|
||||||
|
<DependentUpon>JQSalesSummaryPanel.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Properties\AssemblyInfo.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<EmbeddedResource Include="JQSalesSummaryPanel.resx">
|
||||||
|
<DependentUpon>JQSalesSummaryPanel.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="Properties\Resources.resx">
|
||||||
|
<Generator>PublicResXFileCodeGenerator</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>
|
||||||
|
<EmbeddedResource Include="Ribbon1.resx">
|
||||||
|
<DependentUpon>Ribbon1.cs</DependentUpon>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<None Include="KellyReport_D_TemporaryKey.pfx" />
|
||||||
|
<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>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Ribbon1.cs">
|
||||||
|
<SubType>Component</SubType>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="Ribbon1.Designer.cs">
|
||||||
|
<DependentUpon>Ribbon1.cs</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<Compile Include="ThisAddIn.cs">
|
||||||
|
<SubType>Code</SubType>
|
||||||
|
</Compile>
|
||||||
|
<None Include="ThisAddIn.Designer.xml">
|
||||||
|
<DependentUpon>ThisAddIn.cs</DependentUpon>
|
||||||
|
</None>
|
||||||
|
<Compile Include="ThisAddIn.Designer.cs">
|
||||||
|
<DependentUpon>ThisAddIn.Designer.xml</DependentUpon>
|
||||||
|
</Compile>
|
||||||
|
<AppDesigner Include="Properties\" />
|
||||||
|
</ItemGroup>
|
||||||
|
<ItemGroup />
|
||||||
|
<ItemGroup>
|
||||||
|
<None Include="Resources\icon_32.png" />
|
||||||
|
</ItemGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<VisualStudioVersion Condition="'$(VisualStudioVersion)' == ''">10.0</VisualStudioVersion>
|
||||||
|
<VSToolsPath Condition="'$(VSToolsPath)' == ''">$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)</VSToolsPath>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<SignManifests>true</SignManifests>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<ManifestKeyFile>KellyReport_D_TemporaryKey.pfx</ManifestKeyFile>
|
||||||
|
</PropertyGroup>
|
||||||
|
<PropertyGroup>
|
||||||
|
<ManifestCertificateThumbprint>AE7A694AECE4F9D414288368667D706D52C47471</ManifestCertificateThumbprint>
|
||||||
|
</PropertyGroup>
|
||||||
|
<!-- Include the build rules for a C# project. -->
|
||||||
|
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
|
||||||
|
<!-- Include additional build rules for an Office application add-in. -->
|
||||||
|
<Import Project="$(VSToolsPath)\OfficeTools\Microsoft.VisualStudio.Tools.Office.targets" Condition="'$(VSToolsPath)' != ''" />
|
||||||
|
<!-- This section defines VSTO properties that describe the host-changeable project properties. -->
|
||||||
|
<ProjectExtensions>
|
||||||
|
<VisualStudio>
|
||||||
|
<FlavorProperties GUID="{BAA0C2D2-18E2-41B9-852F-F413020CAA33}">
|
||||||
|
<ProjectProperties HostName="Excel" HostPackage="{29A7B9D7-A7F1-4328-8EF0-6B2D1A56B2C1}" OfficeVersion="15.0" VstxVersion="4.0" ApplicationType="Excel" Language="cs" TemplatesPath="" DebugInfoExeName="#Software\Microsoft\Office\16.0\Excel\InstallRoot\Path#excel.exe" DebugInfoCommandLine="/x" AddItemTemplatesGuid="{51063C3A-E220-4D12-8922-BDA915ACD783}" />
|
||||||
|
<Host Name="Excel" GeneratedCodeNamespace="KellyReport_D" PublishedHash="69C324AB27932AA2FBF2B7EA72250886FF164DE6" IconIndex="0">
|
||||||
|
<HostItem Name="ThisAddIn" Code="ThisAddIn.cs" CanonicalName="AddIn" PublishedHash="A9F48B36E35663A3E2BC522D192F338E70AC95FF" CanActivate="false" IconIndex="1" Blueprint="ThisAddIn.Designer.xml" GeneratedCode="ThisAddIn.Designer.cs" />
|
||||||
|
</Host>
|
||||||
|
</FlavorProperties>
|
||||||
|
</VisualStudio>
|
||||||
|
</ProjectExtensions>
|
||||||
|
</Project>
|
25
KellyReport_D.sln
Normal file
25
KellyReport_D.sln
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
|
||||||
|
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||||
|
# Visual Studio Version 17
|
||||||
|
VisualStudioVersion = 17.9.34728.123
|
||||||
|
MinimumVisualStudioVersion = 10.0.40219.1
|
||||||
|
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "KellyReport_D", "KellyReport_D.csproj", "{FEB9B0D1-503E-42D5-9D86-4F15DDCF8600}"
|
||||||
|
EndProject
|
||||||
|
Global
|
||||||
|
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||||
|
Debug|Any CPU = Debug|Any CPU
|
||||||
|
Release|Any CPU = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||||
|
{FEB9B0D1-503E-42D5-9D86-4F15DDCF8600}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||||
|
{FEB9B0D1-503E-42D5-9D86-4F15DDCF8600}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||||
|
{FEB9B0D1-503E-42D5-9D86-4F15DDCF8600}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||||
|
{FEB9B0D1-503E-42D5-9D86-4F15DDCF8600}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(SolutionProperties) = preSolution
|
||||||
|
HideSolutionNode = FALSE
|
||||||
|
EndGlobalSection
|
||||||
|
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||||
|
SolutionGuid = {53CDA27C-F3CD-4714-884D-B3DDD4E7B47B}
|
||||||
|
EndGlobalSection
|
||||||
|
EndGlobal
|
38
Properties/AssemblyInfo.cs
Normal file
38
Properties/AssemblyInfo.cs
Normal file
@ -0,0 +1,38 @@
|
|||||||
|
using System.Reflection;
|
||||||
|
using System.Runtime.CompilerServices;
|
||||||
|
using System.Runtime.InteropServices;
|
||||||
|
using System.Security;
|
||||||
|
|
||||||
|
// 有关程序集的一般信息由以下
|
||||||
|
// 控制。更改这些特性值可修改
|
||||||
|
// 与程序集关联的信息。
|
||||||
|
[assembly: AssemblyTitle("KellyReport_D")]
|
||||||
|
[assembly: AssemblyDescription("")]
|
||||||
|
[assembly: AssemblyConfiguration("")]
|
||||||
|
[assembly: AssemblyCompany("HP Inc.")]
|
||||||
|
[assembly: AssemblyProduct("KellyReport_D")]
|
||||||
|
[assembly: AssemblyCopyright("Copyright © HP Inc. 2025")]
|
||||||
|
[assembly: AssemblyTrademark("")]
|
||||||
|
[assembly: AssemblyCulture("")]
|
||||||
|
|
||||||
|
//将 ComVisible 设置为 false 将使此程序集中的类型
|
||||||
|
//对 COM 组件不可见。 如果需要从 COM 访问此程序集中的类型,
|
||||||
|
//请将此类型的 ComVisible 特性设置为 true。
|
||||||
|
[assembly: ComVisible(false)]
|
||||||
|
|
||||||
|
// 如果此项目向 COM 公开,则下列 GUID 用于类型库的 ID
|
||||||
|
[assembly: Guid("2f4e225f-decb-4582-86db-d45340dc77d9")]
|
||||||
|
|
||||||
|
// 程序集的版本信息由下列四个值组成:
|
||||||
|
//
|
||||||
|
// 主版本
|
||||||
|
// 次版本
|
||||||
|
// 生成号
|
||||||
|
// 修订号
|
||||||
|
//
|
||||||
|
//可以指定所有这些值,也可以使用“生成号”和“修订号”的默认值,
|
||||||
|
// 方法是按如下所示使用“*”: :
|
||||||
|
// [assembly: AssemblyVersion("1.0.*")]
|
||||||
|
[assembly: AssemblyVersion("1.0.0.0")]
|
||||||
|
[assembly: AssemblyFileVersion("1.0.0.0")]
|
||||||
|
|
146
Properties/Resources.Designer.cs
generated
Normal file
146
Properties/Resources.Designer.cs
generated
Normal file
@ -0,0 +1,146 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// 此代码由工具生成。
|
||||||
|
// 运行时版本:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// 对此文件的更改可能会导致不正确的行为,并且如果
|
||||||
|
// 重新生成代码,这些更改将会丢失。
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace KellyReport_D.Properties {
|
||||||
|
using System;
|
||||||
|
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 一个强类型的资源类,用于查找本地化的字符串等。
|
||||||
|
/// </summary>
|
||||||
|
// 此类是由 StronglyTypedResourceBuilder
|
||||||
|
// 类通过类似于 ResGen 或 Visual Studio 的工具自动生成的。
|
||||||
|
// 若要添加或移除成员,请编辑 .ResX 文件,然后重新运行 ResGen
|
||||||
|
// (以 /str 作为命令选项),或重新生成 VS 项目。
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Resources.Tools.StronglyTypedResourceBuilder", "17.0.0.0")]
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
public 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)]
|
||||||
|
public static global::System.Resources.ResourceManager ResourceManager {
|
||||||
|
get {
|
||||||
|
if (object.ReferenceEquals(resourceMan, null)) {
|
||||||
|
global::System.Resources.ResourceManager temp = new global::System.Resources.ResourceManager("KellyReport_D.Properties.Resources", typeof(Resources).Assembly);
|
||||||
|
resourceMan = temp;
|
||||||
|
}
|
||||||
|
return resourceMan;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 重写当前线程的 CurrentUICulture 属性,对
|
||||||
|
/// 使用此强类型资源类的所有资源查找执行重写。
|
||||||
|
/// </summary>
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
public static global::System.Globalization.CultureInfo Culture {
|
||||||
|
get {
|
||||||
|
return resourceCulture;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
resourceCulture = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 JQ销售年度预估表 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string APP_NAME {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("APP_NAME", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找 System.Drawing.Bitmap 类型的本地化资源。
|
||||||
|
/// </summary>
|
||||||
|
public static System.Drawing.Bitmap icon_32 {
|
||||||
|
get {
|
||||||
|
object obj = ResourceManager.GetObject("icon_32", resourceCulture);
|
||||||
|
return ((System.Drawing.Bitmap)(obj));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 導入銷售表 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string IMPORT_SALES {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("IMPORT_SALES", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 制定年度預估 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string INIT_FORECAST {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("INIT_FORECAST", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 Step1: 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string Step1 {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("Step1", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 請在"銷售年度預估" 和 "產品年度預估" 工作簿中填寫年度預估值,然後點擊下方按鈕開始生成《業務月達成 》和《年度JQ產品》表。 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string STEP1_DESC {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("STEP1_DESC", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 * 如果年度預估已經制定並沒有更改,請跳過該步驟。 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string STEP1_NOTE {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("STEP1_NOTE", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 Step2: 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string Step2 {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("Step2", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 查找类似 請導入銷售數據表, 並點擊下方 "導入銷售表" 按鈕。
|
||||||
|
///程序將會根據銷售表的數據生成各個業務的JQ Total表。 的本地化字符串。
|
||||||
|
/// </summary>
|
||||||
|
public static string STEP2_DESC {
|
||||||
|
get {
|
||||||
|
return ResourceManager.GetString("STEP2_DESC", resourceCulture);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
149
Properties/Resources.resx
Normal file
149
Properties/Resources.resx
Normal file
@ -0,0 +1,149 @@
|
|||||||
|
<?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>
|
||||||
|
<data name="APP_NAME" xml:space="preserve">
|
||||||
|
<value>JQ销售年度预估表</value>
|
||||||
|
</data>
|
||||||
|
<assembly alias="System.Windows.Forms" name="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" />
|
||||||
|
<data name="icon_32" type="System.Resources.ResXFileRef, System.Windows.Forms">
|
||||||
|
<value>..\Resources\icon_32.png;System.Drawing.Bitmap, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a</value>
|
||||||
|
</data>
|
||||||
|
<data name="IMPORT_SALES" xml:space="preserve">
|
||||||
|
<value>導入銷售表</value>
|
||||||
|
</data>
|
||||||
|
<data name="INIT_FORECAST" xml:space="preserve">
|
||||||
|
<value>制定年度預估</value>
|
||||||
|
</data>
|
||||||
|
<data name="Step1" xml:space="preserve">
|
||||||
|
<value>Step1:</value>
|
||||||
|
</data>
|
||||||
|
<data name="STEP1_DESC" xml:space="preserve">
|
||||||
|
<value>請在"銷售年度預估" 和 "產品年度預估" 工作簿中填寫年度預估值,然後點擊下方按鈕開始生成《業務月達成 》和《年度JQ產品》表。</value>
|
||||||
|
</data>
|
||||||
|
<data name="STEP1_NOTE" xml:space="preserve">
|
||||||
|
<value>* 如果年度預估已經制定並沒有更改,請跳過該步驟。</value>
|
||||||
|
</data>
|
||||||
|
<data name="Step2" xml:space="preserve">
|
||||||
|
<value>Step2:</value>
|
||||||
|
</data>
|
||||||
|
<data name="STEP2_DESC" xml:space="preserve">
|
||||||
|
<value>請導入銷售數據表, 並點擊下方 "導入銷售表" 按鈕。
|
||||||
|
程序將會根據銷售表的數據生成各個業務的JQ Total表。 </value>
|
||||||
|
</data>
|
||||||
|
</root>
|
26
Properties/Settings.Designer.cs
generated
Normal file
26
Properties/Settings.Designer.cs
generated
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
namespace KellyReport_D.Properties {
|
||||||
|
|
||||||
|
|
||||||
|
[global::System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Editors.SettingsDesigner.SettingsSingleFileGenerator", "17.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;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
7
Properties/Settings.settings
Normal file
7
Properties/Settings.settings
Normal file
@ -0,0 +1,7 @@
|
|||||||
|
<?xml version='1.0' encoding='utf-8'?>
|
||||||
|
<SettingsFile xmlns="http://schemas.microsoft.com/VisualStudio/2004/01/settings" CurrentProfile="(Default)">
|
||||||
|
<Profiles>
|
||||||
|
<Profile Name="(Default)" />
|
||||||
|
</Profiles>
|
||||||
|
<Settings />
|
||||||
|
</SettingsFile>
|
BIN
Resources/icon_32.png
Normal file
BIN
Resources/icon_32.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 50 KiB |
93
Ribbon1.Designer.cs
generated
Normal file
93
Ribbon1.Designer.cs
generated
Normal file
@ -0,0 +1,93 @@
|
|||||||
|
namespace KellyReport_D
|
||||||
|
{
|
||||||
|
partial class Ribbon1 : Microsoft.Office.Tools.Ribbon.RibbonBase
|
||||||
|
{
|
||||||
|
/// <summary>
|
||||||
|
/// 必需的设计器变量。
|
||||||
|
/// </summary>
|
||||||
|
private System.ComponentModel.IContainer components = null;
|
||||||
|
|
||||||
|
public Ribbon1()
|
||||||
|
: base(Globals.Factory.GetRibbonFactory())
|
||||||
|
{
|
||||||
|
InitializeComponent();
|
||||||
|
}
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 清理所有正在使用的资源。
|
||||||
|
/// </summary>
|
||||||
|
/// <param name="disposing">如果应释放托管资源,为 true;否则为 false。</param>
|
||||||
|
protected override void Dispose(bool disposing)
|
||||||
|
{
|
||||||
|
if (disposing && (components != null))
|
||||||
|
{
|
||||||
|
components.Dispose();
|
||||||
|
}
|
||||||
|
base.Dispose(disposing);
|
||||||
|
}
|
||||||
|
|
||||||
|
#region 组件设计器生成的代码
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 设计器支持所需的方法 - 不要修改
|
||||||
|
/// 使用代码编辑器修改此方法的内容。
|
||||||
|
/// </summary>
|
||||||
|
private void InitializeComponent()
|
||||||
|
{
|
||||||
|
this.tab1 = this.Factory.CreateRibbonTab();
|
||||||
|
this.groupName = this.Factory.CreateRibbonGroup();
|
||||||
|
this.button1 = this.Factory.CreateRibbonButton();
|
||||||
|
this.tab1.SuspendLayout();
|
||||||
|
this.groupName.SuspendLayout();
|
||||||
|
this.SuspendLayout();
|
||||||
|
//
|
||||||
|
// tab1
|
||||||
|
//
|
||||||
|
this.tab1.ControlId.ControlIdType = Microsoft.Office.Tools.Ribbon.RibbonControlIdType.Office;
|
||||||
|
this.tab1.Groups.Add(this.groupName);
|
||||||
|
this.tab1.Label = "TabAddIns";
|
||||||
|
this.tab1.Name = "tab1";
|
||||||
|
//
|
||||||
|
// groupName
|
||||||
|
//
|
||||||
|
this.groupName.Items.Add(this.button1);
|
||||||
|
this.groupName.Name = "groupName";
|
||||||
|
//
|
||||||
|
// button1
|
||||||
|
//
|
||||||
|
this.button1.ControlSize = Microsoft.Office.Core.RibbonControlSize.RibbonControlSizeLarge;
|
||||||
|
this.button1.Image = global::KellyReport_D.Properties.Resources.icon_32;
|
||||||
|
this.button1.Label = "";
|
||||||
|
this.button1.Name = "button1";
|
||||||
|
this.button1.ShowImage = true;
|
||||||
|
this.button1.Click += new Microsoft.Office.Tools.Ribbon.RibbonControlEventHandler(this.button1_Click);
|
||||||
|
//
|
||||||
|
// Ribbon1
|
||||||
|
//
|
||||||
|
this.Name = "Ribbon1";
|
||||||
|
this.RibbonType = "Microsoft.Excel.Workbook";
|
||||||
|
this.Tabs.Add(this.tab1);
|
||||||
|
this.Load += new Microsoft.Office.Tools.Ribbon.RibbonUIEventHandler(this.Ribbon1_Load);
|
||||||
|
this.tab1.ResumeLayout(false);
|
||||||
|
this.tab1.PerformLayout();
|
||||||
|
this.groupName.ResumeLayout(false);
|
||||||
|
this.groupName.PerformLayout();
|
||||||
|
this.ResumeLayout(false);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
|
||||||
|
internal Microsoft.Office.Tools.Ribbon.RibbonTab tab1;
|
||||||
|
internal Microsoft.Office.Tools.Ribbon.RibbonGroup groupName;
|
||||||
|
internal Microsoft.Office.Tools.Ribbon.RibbonButton button1;
|
||||||
|
}
|
||||||
|
|
||||||
|
partial class ThisRibbonCollection
|
||||||
|
{
|
||||||
|
internal Ribbon1 Ribbon1
|
||||||
|
{
|
||||||
|
get { return this.GetRibbon<Ribbon1>(); }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
33
Ribbon1.cs
Normal file
33
Ribbon1.cs
Normal file
@ -0,0 +1,33 @@
|
|||||||
|
using KellyReport_D.Properties;
|
||||||
|
using Microsoft.Office.Tools;
|
||||||
|
using Microsoft.Office.Tools.Ribbon;
|
||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
|
||||||
|
namespace KellyReport_D
|
||||||
|
{
|
||||||
|
public partial class Ribbon1
|
||||||
|
{
|
||||||
|
private CustomTaskPane jqSalesSummaryPanel;
|
||||||
|
|
||||||
|
private void Ribbon1_Load(object sender, RibbonUIEventArgs e)
|
||||||
|
{
|
||||||
|
this.button1.Label = Resources.APP_NAME;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
private void button1_Click(object sender, RibbonControlEventArgs e)
|
||||||
|
{
|
||||||
|
if (jqSalesSummaryPanel == null)
|
||||||
|
{
|
||||||
|
var panel = new JQSalesSummaryPanel();
|
||||||
|
jqSalesSummaryPanel = Globals.ThisAddIn.CustomTaskPanes.Add(panel, Resources.APP_NAME);
|
||||||
|
jqSalesSummaryPanel.Width = 600;
|
||||||
|
}
|
||||||
|
|
||||||
|
jqSalesSummaryPanel.Visible = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
120
Ribbon1.resx
Normal file
120
Ribbon1.resx
Normal file
@ -0,0 +1,120 @@
|
|||||||
|
<?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>
|
||||||
|
</root>
|
237
ThisAddIn.Designer.cs
generated
Normal file
237
ThisAddIn.Designer.cs
generated
Normal file
@ -0,0 +1,237 @@
|
|||||||
|
//------------------------------------------------------------------------------
|
||||||
|
// <auto-generated>
|
||||||
|
// This code was generated by a tool.
|
||||||
|
// Runtime Version:4.0.30319.42000
|
||||||
|
//
|
||||||
|
// Changes to this file may cause incorrect behavior and will be lost if
|
||||||
|
// the code is regenerated.
|
||||||
|
// </auto-generated>
|
||||||
|
//------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
#pragma warning disable 414
|
||||||
|
namespace KellyReport_D {
|
||||||
|
|
||||||
|
|
||||||
|
///
|
||||||
|
[Microsoft.VisualStudio.Tools.Applications.Runtime.StartupObjectAttribute(0)]
|
||||||
|
[global::System.Security.Permissions.PermissionSetAttribute(global::System.Security.Permissions.SecurityAction.Demand, Name="FullTrust")]
|
||||||
|
public sealed partial class ThisAddIn : Microsoft.Office.Tools.AddInBase {
|
||||||
|
|
||||||
|
internal Microsoft.Office.Tools.CustomTaskPaneCollection CustomTaskPanes;
|
||||||
|
|
||||||
|
internal Microsoft.Office.Tools.SmartTagCollection VstoSmartTags;
|
||||||
|
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
private global::System.Object missing = global::System.Type.Missing;
|
||||||
|
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
internal Microsoft.Office.Interop.Excel.Application Application;
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
public ThisAddIn(global::Microsoft.Office.Tools.Excel.ApplicationFactory factory, global::System.IServiceProvider serviceProvider) :
|
||||||
|
base(factory, serviceProvider, "AddIn", "ThisAddIn") {
|
||||||
|
Globals.Factory = factory;
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
protected override void Initialize() {
|
||||||
|
base.Initialize();
|
||||||
|
this.Application = this.GetHostItem<Microsoft.Office.Interop.Excel.Application>(typeof(Microsoft.Office.Interop.Excel.Application), "Application");
|
||||||
|
Globals.ThisAddIn = this;
|
||||||
|
global::System.Windows.Forms.Application.EnableVisualStyles();
|
||||||
|
this.InitializeCachedData();
|
||||||
|
this.InitializeControls();
|
||||||
|
this.InitializeComponents();
|
||||||
|
this.InitializeData();
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
protected override void FinishInitialization() {
|
||||||
|
this.InternalStartup();
|
||||||
|
this.OnStartup();
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
protected override void InitializeDataBindings() {
|
||||||
|
this.BeginInitialization();
|
||||||
|
this.BindToData();
|
||||||
|
this.EndInitialization();
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void InitializeCachedData() {
|
||||||
|
if ((this.DataHost == null)) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (this.DataHost.IsCacheInitialized) {
|
||||||
|
this.DataHost.FillCachedData(this);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void InitializeData() {
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void BindToData() {
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
private void StartCaching(string MemberName) {
|
||||||
|
this.DataHost.StartCaching(this, MemberName);
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
private void StopCaching(string MemberName) {
|
||||||
|
this.DataHost.StopCaching(this, MemberName);
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
private bool IsCached(string MemberName) {
|
||||||
|
return this.DataHost.IsCached(this, MemberName);
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void BeginInitialization() {
|
||||||
|
this.BeginInit();
|
||||||
|
this.CustomTaskPanes.BeginInit();
|
||||||
|
this.VstoSmartTags.BeginInit();
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void EndInitialization() {
|
||||||
|
this.VstoSmartTags.EndInit();
|
||||||
|
this.CustomTaskPanes.EndInit();
|
||||||
|
this.EndInit();
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void InitializeControls() {
|
||||||
|
this.CustomTaskPanes = Globals.Factory.CreateCustomTaskPaneCollection(null, null, "CustomTaskPanes", "CustomTaskPanes", this);
|
||||||
|
this.VstoSmartTags = Globals.Factory.CreateSmartTagCollection(null, null, "VstoSmartTags", "VstoSmartTags", this);
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
private void InitializeComponents() {
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Advanced)]
|
||||||
|
private bool NeedsFill(string MemberName) {
|
||||||
|
return this.DataHost.NeedsFill(this, MemberName);
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
[global::System.ComponentModel.EditorBrowsableAttribute(global::System.ComponentModel.EditorBrowsableState.Never)]
|
||||||
|
protected override void OnShutdown() {
|
||||||
|
this.VstoSmartTags.Dispose();
|
||||||
|
this.CustomTaskPanes.Dispose();
|
||||||
|
base.OnShutdown();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
internal sealed partial class Globals {
|
||||||
|
|
||||||
|
///
|
||||||
|
private Globals() {
|
||||||
|
}
|
||||||
|
|
||||||
|
private static ThisAddIn _ThisAddIn;
|
||||||
|
|
||||||
|
private static global::Microsoft.Office.Tools.Excel.ApplicationFactory _factory;
|
||||||
|
|
||||||
|
private static ThisRibbonCollection _ThisRibbonCollection;
|
||||||
|
|
||||||
|
internal static ThisAddIn ThisAddIn {
|
||||||
|
get {
|
||||||
|
return _ThisAddIn;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
if ((_ThisAddIn == null)) {
|
||||||
|
_ThisAddIn = value;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
throw new System.NotSupportedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static global::Microsoft.Office.Tools.Excel.ApplicationFactory Factory {
|
||||||
|
get {
|
||||||
|
return _factory;
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
if ((_factory == null)) {
|
||||||
|
_factory = value;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
throw new System.NotSupportedException();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
internal static ThisRibbonCollection Ribbons {
|
||||||
|
get {
|
||||||
|
if ((_ThisRibbonCollection == null)) {
|
||||||
|
_ThisRibbonCollection = new ThisRibbonCollection(_factory.GetRibbonFactory());
|
||||||
|
}
|
||||||
|
return _ThisRibbonCollection;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
///
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Microsoft.VisualStudio.Tools.Office.ProgrammingModel.dll", "17.0.0.0")]
|
||||||
|
internal sealed partial class ThisRibbonCollection : Microsoft.Office.Tools.Ribbon.RibbonCollectionBase {
|
||||||
|
|
||||||
|
///
|
||||||
|
internal ThisRibbonCollection(global::Microsoft.Office.Tools.Ribbon.RibbonFactory factory) :
|
||||||
|
base(factory) {
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
5
ThisAddIn.Designer.xml
Normal file
5
ThisAddIn.Designer.xml
Normal file
@ -0,0 +1,5 @@
|
|||||||
|
<hostitem:hostItem hostitem:baseType="Microsoft.Office.Tools.AddInBase" hostitem:namespace="KellyReport_D" hostitem:className="ThisAddIn" hostitem:identifier="ThisAddIn" hostitem:primaryCookie="AddIn" hostitem:master="true" hostitem:factoryType="Microsoft.Office.Tools.Excel.ApplicationFactory" hostitem:startupIndex="0" xmlns:hostitem="http://schemas.microsoft.com/2004/VisualStudio/Tools/Applications/HostItem.xsd">
|
||||||
|
<hostitem:hostObject hostitem:name="Application" hostitem:identifier="Application" hostitem:type="Microsoft.Office.Interop.Excel.Application" hostitem:cookie="Application" hostitem:modifier="Internal" />
|
||||||
|
<hostitem:hostControl hostitem:name="CustomTaskPanes" hostitem:identifier="CustomTaskPanes" hostitem:type="Microsoft.Office.Tools.CustomTaskPaneCollection" hostitem:primaryCookie="CustomTaskPanes" hostitem:modifier="Internal" />
|
||||||
|
<hostitem:hostControl hostitem:name="VstoSmartTags" hostitem:identifier="VstoSmartTags" hostitem:type="Microsoft.Office.Tools.SmartTagCollection" hostitem:primaryCookie="VstoSmartTags" hostitem:modifier="Internal" />
|
||||||
|
</hostitem:hostItem>
|
36
ThisAddIn.cs
Normal file
36
ThisAddIn.cs
Normal file
@ -0,0 +1,36 @@
|
|||||||
|
using System;
|
||||||
|
using System.Collections.Generic;
|
||||||
|
using System.Linq;
|
||||||
|
using System.Text;
|
||||||
|
using System.Xml.Linq;
|
||||||
|
using Excel = Microsoft.Office.Interop.Excel;
|
||||||
|
using Office = Microsoft.Office.Core;
|
||||||
|
using Microsoft.Office.Tools.Excel;
|
||||||
|
using Microsoft.Office.Tools.Ribbon;
|
||||||
|
|
||||||
|
namespace KellyReport_D
|
||||||
|
{
|
||||||
|
public partial class ThisAddIn
|
||||||
|
{
|
||||||
|
private void ThisAddIn_Startup(object sender, System.EventArgs e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
private void ThisAddIn_Shutdown(object sender, System.EventArgs e)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
#region VSTO 生成的代码
|
||||||
|
|
||||||
|
/// <summary>
|
||||||
|
/// 设计器支持所需的方法 - 不要修改
|
||||||
|
/// 使用代码编辑器修改此方法的内容。
|
||||||
|
/// </summary>
|
||||||
|
private void InternalStartup()
|
||||||
|
{
|
||||||
|
this.Startup += new System.EventHandler(ThisAddIn_Startup);
|
||||||
|
this.Shutdown += new System.EventHandler(ThisAddIn_Shutdown);
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user