在好例子网,分享、交流、成长!
您当前所在位置:首页C# 开发实例C#语言基础 → C# C1CHART的运用 实例源码下载

C# C1CHART的运用 实例源码下载

C#语言基础

下载此实例
  • 开发语言:C#
  • 实例大小:5.32M
  • 下载次数:33
  • 浏览次数:903
  • 发布时间:2017-02-16
  • 实例类别:C#语言基础
  • 发 布 人:914811
  • 文件格式:.zip
  • 所需积分:2
 相关标签: c chart 1 t

实例介绍

【实例简介】

【实例截图】

【核心代码】

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 System.Data.OleDb;
using System.Collections;
using System.Threading;

namespace zjr
{
    public partial class Form10 : Form
    {
        public Form10()
        {
            InitializeComponent();
        }

        private void Form10_Load(object sender, EventArgs e)
        {

        }


        private void Btn_导入_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "Excel (*.xls, *.xlsx)|*.xls;*.xlsx";
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                DataTable dt = XlsToDataTable(ofd.FileName);
            }
        }



        private void button1_Click(object sender, EventArgs e)
        {
            OpenFileDialog ofd = new OpenFileDialog();
            ofd.Filter = "Excel (*.xls, *.xlsx)|*.xls;*.xlsx";
            if (ofd.ShowDialog() == DialogResult.OK)
            {
                try
                {
                    //Load selected Excel File
                    c1FlexGrid1.DataSource = null;
                    c1FlexGrid1.LoadExcel(ofd.FileName);
                    DataTable dt = c1FlexGrid1.DataSource as DataTable;
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Unable to open Excel file: "   ex.Message);
                }
            }
            for (int i = 0; i < c1FlexGrid1.Rows.Count; i  )
            {

            }
        }
        private DataTable XlsToDataTable(String strpath)
        {
            ArrayList al = new ArrayList();
            string strConn;
            strConn = "Provider=Microsoft.Jet.OLEDB.4.0;"  
                "Data Source="   strpath   ";"  
                "Extended Properties=Excel 8.0;";
            OleDbConnection conn = new OleDbConnection(strConn);
            conn.Open();

            DataTable sheetNames = conn.GetOleDbSchemaTable
           (System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            conn.Close();
            foreach (DataRow dr in sheetNames.Rows)
            {
                al.Add(dr[2]);
            }


            OleDbDataAdapter myCommand = new OleDbDataAdapter("SELECT * FROM [历史版本$]", strConn);
            DataTable dt = new DataTable();

            myCommand.Fill(dt);
            dt.Columns[7].ColumnName = "列名";
            dt.Columns[8].ColumnName = "第一天";
            dt.Columns[9].ColumnName = "第二天";
            dt.Columns[10].ColumnName = "第三天";
            dt.Columns[11].ColumnName = "第四天";
            dt.Columns[12].ColumnName = "第五天";
            dt.Columns[13].ColumnName = "第六天";
            dt.Columns[14].ColumnName = "第七天";
            dt.Columns[15].ColumnName = "ALL";
            int all = 0;
            int sum = 0;
            string line = "";
            string pro = "";
            string pronum = "";
            string WORK = "";
            string user = "";
            foreach (DataRow item in dt.Rows)
            {
                if (item["列名"].ToString() == "实际数量")
                {
                    item["第一天"] = 200;
                    item["第二天"] = 200;
                    item["第三天"] = 200;
                    item["第四天"] = 200;
                    item["第五天"] = 200;
                    item["第六天"] = 200;
                    item["第七天"] = 200;
                }
            }
            int a = 0;
            foreach (DataRow item in dt.Rows)
            {
                sum  ;
                if (item["生产线"].ToString() != "")
                {
                    line = item["生产线"].ToString();
                }
                if (item["产品编号"].ToString() != "")
                {
                    pro = item["产品编号"].ToString();
                }
                if (item["初始库存"].ToString() != "")
                {
                    pronum = item["初始库存"].ToString();
                }

                if (item["列名"].ToString() == "发货数量")
                {

                    all = sum - all;
                    for (int i = 1; i < all; i  )
                    {
                        dt.Rows[sum - all   i]["生产线"] = line;
                        dt.Rows[sum - all   i]["产品编号"] = pro;
                        dt.Rows[sum - all   i]["初始库存"] = pronum;
                        if (dt.Rows[sum - all   1]["工作中心"].ToString() != "" && dt.Rows[sum - all   1]["列名"].ToString() == "库存数量")
                        {
                            dt.Rows[sum - all   i]["工作中心"] = dt.Rows[sum - all   1]["工作中心"].ToString();
                            dt.Rows[sum - all   i]["客户名称"] = dt.Rows[sum - all   1]["客户名称"].ToString();
                        }
                        else
                        {
                            if (dt.Rows[sum - all   i]["工作中心"].ToString() != "" && dt.Rows[sum - all   1]["列名"].ToString() == "计划数量")
                            {
                                WORK = dt.Rows[sum - all   i]["工作中心"].ToString();
                                user = dt.Rows[sum - all   i]["客户名称"].ToString();
                            }
                            dt.Rows[sum - all   i]["工作中心"] = WORK;
                            dt.Rows[sum - all   i]["客户名称"] = user;
                        }
                    }
                    if (a > 0)
                    {
                        dt.Rows[sum - all]["第一天"] = dt.Rows[sum - all   2]["初始库存"].ToString();
                    }
                    else
                    {
                        dt.Rows[sum - all   1]["第一天"] = dt.Rows[sum - all   2]["初始库存"].ToString();
                    }
                    for (int i = 8; i < 15; i  )
                    {
                        int shuliang1 = 0;
                        int b = 0;
                        if (a > 0)
                        {
                            b = 0;
                        }
                        else
                        {
                            b = 1;
                        }
                        for (int j = b; j < all; j  )
                        {
                            if (dt.Rows[sum - all   j]["列名"].ToString() == "库存数量")
                            {
                                if (dt.Rows[sum - all   j][i].ToString() != "")
                                {
                                    shuliang1 = Convert.ToInt16(dt.Rows[sum - all   j][i]);
                                }
                            }
                            if (dt.Rows[sum - all   j]["列名"].ToString() == "实际数量")
                            {
                                if (dt.Rows[sum - all   j][i].ToString() != "")
                                {
                                    shuliang1 = shuliang1   Convert.ToInt16(dt.Rows[sum - all   j][i]);
                                }
                            }
                            if (dt.Rows[sum - all   j]["列名"].ToString() == "发货数量")
                            {
                                if (dt.Rows[sum - all   j][i].ToString() != "")
                                {
                                    shuliang1 = shuliang1 - Convert.ToInt16(dt.Rows[sum - all   j][i]);
                                }
                            }
                        }
                        for (int j = b; j < all; j  )
                        {
                            if (dt.Rows[sum - all   j]["列名"].ToString() == "计划数量")
                            {
                                int all1 = 0;
                                for (int k = 8; k < 15; k  )
                                {
                                    all1 = all1   Convert.ToInt16(dt.Rows[sum - all   j][k]);
                                }
                                dt.Rows[sum - all   j]["ALL"] = all1;
                            }
                            if (dt.Rows[sum - all   j]["列名"].ToString() == "实际数量")
                            {
                                int all1 = 0;
                                for (int k = 8; k < 15; k  )
                                {
                                    all1 = all1   Convert.ToInt16(dt.Rows[sum - all   j][k]);
                                }
                                dt.Rows[sum - all   j]["ALL"] = all1;
                            }
                        }
                        if (i   1 < 15)
                        {
                            if (a > 0)
                            {
                                dt.Rows[sum - all][i   1] = shuliang1;
                            }
                            else
                            {
                                dt.Rows[sum - all   1][i   1] = shuliang1;
                            }
                        }
                    }
                    a  ;
                }
            }
            DataTable dtMain = new DataTable();
            dtMain.Columns.Add("生产线", typeof(string));
            dtMain.Columns.Add("产品编号", typeof(string));
            dtMain.Columns.Add("初始库存", typeof(string));
            dtMain.Columns.Add("第几周", typeof(string));
            DataTable dtSub1 = new DataTable();
            dtSub1.Columns.Add("工作中心", typeof(string));
            dtSub1.Columns.Add("日期", typeof(string));
            dtSub1.Columns.Add("库存数量", typeof(string));
            dtSub1.Columns.Add("实际数量", typeof(string));
            dtSub1.Columns.Add("计划数量", typeof(string));
            dtSub1.Columns.Add("发货数量", typeof(string));
            dtSub1.Columns.Add("客户名称", typeof(string));
            List<string> list = new List<string>();
            foreach (DataRow item in dt.Rows)
            {
                if (item["生产线"].ToString() != "")
                {
                    if (!list.Contains(item["生产线"].ToString()))
                    {
                        list.Add(item["生产线"].ToString());
                        DataRow dr = dtMain.NewRow();
                        dr["生产线"] = item["生产线"].ToString();
                        dr["产品编号"] = item["产品编号"].ToString();
                        //dr["客户名称"] = item["客户名称"].ToString();
                        dr["初始库存"] = item["初始库存"].ToString();
                        dr["第几周"] = "CW1";
                        dtMain.Rows.Add(dr);
                        List<string> list1 = new List<string>();
                        DataRow[] drs = dt.Select("生产线='"   item["生产线"].ToString()   "'");
                        foreach (DataRow item1 in drs)
                        {
                            if (!list1.Contains(item1["工作中心"].ToString()))
                            {
                                list1.Add(item1["工作中心"].ToString());
                            }
                            for (int j = 8; j < 15; j  )
                            {

                            }
                        }
                        list1.Remove("");
                        DataTable dtSub = dtSub1.Copy();
                        if (list1.Count == 1)
                        {
                            for (int i = 0; i < list.Count * 7; i  )
                            {
                                DataRow dr1 = dtSub.NewRow();
                                dtSub.Rows.Add(dr1);
                            }

                            for (int i = 0; i < 4; i  )
                            {
                                for (int j = 8; j < 15; j  )
                                {
                                    dtSub.Rows[j - 8][i   2] = drs[i][j].ToString();
                                    dtSub.Rows[j - 8]["工作中心"] = list1[0].ToString();
                                    dtSub.Rows[j - 8]["日期"] = dt.Rows[0][j].ToString();
                                    dtSub.Rows[j - 8]["客户名称"] = dt.Rows[1]["客户名称"].ToString();
                                }
                            }
                        }
                        else if (list1.Count > 1)
                        {
                            for (int i = 0; i < list1.Count; i  )
                            {
                                DataRow[] drs1 = dt.Select("工作中心='"   list1[i].ToString()   "'");
                                if (drs1.Length > 0)
                                {
                                    for (int l = 0; l < 7; l  )
                                    {
                                        DataRow dr1 = dtSub.NewRow();
                                        dtSub.Rows.Add(dr1);
                                    }
                                    for (int k = 0; k < 2; k  )
                                    {
                                        for (int j = 8; j < 15; j  )
                                        {
                                            dtSub.Rows[j - 8   i * 7][k   3] = drs1[k][j].ToString();
                                            dtSub.Rows[j - 8   i * 7]["工作中心"] = list1[i].ToString();
                                            dtSub.Rows[j - 8   i * 7]["日期"] = dt.Rows[0][j].ToString();
                                            dtSub.Rows[j - 8   i * 7]["库存数量"] = drs[0][j].ToString();
                                            dtSub.Rows[j - 8   i * 7]["发货数量"] = drs[drs.Length - 1][j].ToString();
                                            dtSub.Rows[j - 8   i * 7]["客户名称"] = drs1[k]["客户名称"].ToString();
                                        }
                                    }
                                }
                            }
                        }
                    }
                }
            }
            return dt;
        }

        private string ToDateTimeValue(string strNumber)
        {
            if (!string.IsNullOrWhiteSpace(strNumber))
            {
                Decimal tempValue;
                //先检查 是不是数字;
                if (Decimal.TryParse(strNumber, out tempValue))
                {
                    //天数,取整
                    int day = Convert.ToInt32(Math.Truncate(tempValue));
                    //这里也不知道为什么. 如果是小于32,则减1,否则减2
                    //日期从1900-01-01开始累加 
                    // day = day < 32 ? day - 1 : day - 2;
                    DateTime dt = new DateTime(1900, 1, 1).AddDays(day < 32 ? (day - 1) : (day - 2));

                    //小时:减掉天数,这个数字转换小时:(* 24) 
                    Decimal hourTemp = (tempValue - day) * 24;//获取小时数
                    //取整.小时数
                    int hour = Convert.ToInt32(Math.Truncate(hourTemp));
                    //分钟:减掉小时,( * 60)
                    //这里舍入,否则取值会有1分钟误差.
                    Decimal minuteTemp = Math.Round((hourTemp - hour) * 60, 2);//获取分钟数
                    int minute = Convert.ToInt32(Math.Truncate(minuteTemp));
                    //秒:减掉分钟,( * 60)
                    //这里舍入,否则取值会有1秒误差.
                    Decimal secondTemp = Math.Round((minuteTemp - minute) * 60, 2);//获取秒数
                    int second = Convert.ToInt32(Math.Truncate(secondTemp));

                    //时间格式:00:00:00
                    string resultTimes = string.Format("{0}:{1}:{2}",
                            (hour < 10 ? ("0"   hour) : hour.ToString()),
                            (minute < 10 ? ("0"   minute) : minute.ToString()),
                            (second < 10 ? ("0"   second) : second.ToString()));

                    if (day > 0)
                        return string.Format("{0} {1}", dt.ToString("yyyy-MM-dd"), resultTimes);
                    else
                        return resultTimes;
                }
            }
            return string.Empty;
        }

        private void button3_Click(object sender, EventArgs e)
        {
            //string a = ToDateTimeValue("42205");
            string str = "2007年12月8日";
            DateTime dt = Convert.ToDateTime(str);
            Thread.CurrentThread.CurrentCulture = new System.Globalization.CultureInfo("en-GB");
            string res = dt.ToString("m").Substring(0,6);
        }

        public ArrayList ExcelSheetName(string filepath)
        {
            ArrayList al = new ArrayList();
            string strConn;
            strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="   filepath   ";Extended Properties=\"Excel 8.0;HDR=Yes;IMEX=1;\";";
            OleDbConnection conn = new OleDbConnection(strConn);
            conn.Open();
            DataTable sheetNames = conn.GetOleDbSchemaTable
            (System.Data.OleDb.OleDbSchemaGuid.Tables, new object[] { null, null, null, "TABLE" });
            conn.Close();
            foreach (DataRow dr in sheetNames.Rows)
            {
                al.Add(dr[2]);
            }
            return al;
        }

        private void button4_Click(object sender, EventArgs e)
        {
            string a = "CW30_V1.0.XLSX";
            string [] f = a.Split('_');
            string B = f[0];
            string[] b = f[1].Split('.');


            string C = b[0]   "."   b[1];
           
        }
    }
}

标签: c chart 1 t

实例下载地址

网友评论

发表评论

(您的评论需要经过审核才能显示)

查看所有0条评论>>

小贴士

感谢您为本站写下的评论,您的评论对其它用户来说具有重要的参考价值,所以请认真填写。

  • 类似“顶”、“沙发”之类没有营养的文字,对勤劳贡献的楼主来说是令人沮丧的反馈信息。
  • 相信您也不想看到一排文字/表情墙,所以请不要反馈意义不大的重复字符,也请尽量不要纯表情的回复。
  • 提问之前请再仔细看一遍楼主的说明,或许是您遗漏了。
  • 请勿到处挖坑绊人、招贴广告。既占空间让人厌烦,又没人会搭理,于人于己都无利。

关于好例子网

本站旨在为广大IT学习爱好者提供一个非营利性互相学习交流分享平台。本站所有资源都可以被免费获取学习研究。本站资源来自网友分享,对搜索内容的合法性不具有预见性、识别性、控制性,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,平台无法对用户传输的作品、信息、内容的权属或合法性、安全性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论平台是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二与二十三条之规定,若资源存在侵权或相关问题请联系本站客服人员,点此联系我们。关于更多版权及免责申明参见 版权及免责申明

;
报警