投递文章投递文章 投稿指南 RSS订阅RSS订阅

C#利用DataGridView实现数据的快速输入

来源:iT堂整理 发布时间:2008-01-06 收藏 投稿 字体:【

在做管理软件时,常常需要表格输入功能。表格输入极大地加快了数据输入,提高了工作效率,当然也提高了软件的竞争性。笔者最近用C#在做一套CRM时,成功地使用C#   2005里面的表格控件DataGridView实现了表格输入功能,现在就把具体实现与各位分享:
1. 初始化工作
(1) 在Vs   2005   里面新建一个C#   WinForm   应用程序:   DataGridViewTest
(2) 在窗体Form1上拖一个DataGridView控件:DataGridView1
(3) 在DataGridView1里添加两个列:
Column1:
        类型:DataGridViewComboBoxColumn
      HeaderText:时间
      DataPropertyName:DutyTime      
Column2:
      类型:DataGridViewTextBoxColumn
      HeaderText:时间
      DataPropertyName:DutyTime
 
(4)在Form1类中添加两个私有属性:
              private   DataTable   m_Table;//输入组合框控件的下拉数据
              private   DataTable   m_DataTable;//与表格绑定的DataTable,即用户输入的最终数据

(5)在Form1类里面定义一个结构体

public   struct   MyRowData
{
                        public   MyRowData(int   no,   string   enDay,   string   cnDay)
                        {
                                No   =   no;
                                EnDay   =   enDay;
                                CnDay   =   cnDay;
                        }
                        public   int   No;
                        public   string   EnDay;
                        public   string   CnDay;
}


(6) 在Form1的load事件Form1_Load(object   sender,   EventArgs   e)   加上以下初始化代码:


this.dataGridView1.AllowUserToAddRows   =   true;
this.dataGridView1.AllowUserToDeleteRows   =   true;                      
  this.dataGridView1.AutoGenerateColumns   =   false;
DataColumn   dc1,   dc2,   dc3
dc1   =   new   DataColumn("No",   typeof(int));
dc2   =   new   DataColumn("EnDay",   typeof(string));
dc3   =   new   DataColumn("CnDay",   typeof(string));
m_Table.Columns.Clear();
m_Table.Columns.AddRange(new   DataColumn[]   {   dc1,   dc2,   dc3   });
MyRowData[]   Datas   =   new   MyRowData[7]{
                                                              new   MyRowData(   1,"Monday","星期一"),
                                                              new   MyRowData(   2,"Tuesday","星期二"),  
                                                              new   MyRowData(   3,"Wednesday","星期三"   ),
                                                              new   MyRowData(   4,"Thursday","星期四"   ),
                                                              new   MyRowData(   5,   "Friday","星期五"),
                                                              new   MyRowData(   6,"Saturday","星期六"),
                                                              new   MyRowData(   7,"Sunday","星期日")
                                                          };
this.m_Table.Rows.Clear();
foreach   (MyRowData   iData   in   Datas)
{
        this.m_Table.Rows.Add(iData.No,   iData.EnDay,   iData.CnDay);
}

   
DataColumn   dataDc1,   dataDc2;

dataDc1   =   new   DataColumn("DutyTime",   typeof(int));
dataDc2   =   new   DataColumn("DutyPerson",   typeof(string));
m_DataTable.Columns.Clear();
m_DataTable.Columns.AddRange(new   DataColumn[]   {   dataDc1,   dataDc2});
m_DataTable.Rows.Clear();
           
Column1.DataSource   =   this.m_Table;
Column1.DisplayMember   =   "CnDay";
Column1.ValueMember   =   "No";
         
this.dataGridView1.DataSource   =   m_DataTable; 
    

顶一下
(111)
100%
踩一下
(0)
0%
本文Tags:
  • 表情:
  •    
  • 评价:
用户名: 密码: 匿名 注册
最新评论 查看所有评论
About iTtang - 联系我们  - 专题列表 - 友情链接  -  高级搜索  -  帮助中心  -  您的意见