windows mobile 中如何利用datatable 添加数据以及改变datagrid中每一列的宽度
1 public Form1() 2 { 3 InitializeComponent(); 4 InitDataGrid(); 5 6 } 7 8 DataTable _dt = new DataTable(); 9 10 private void InitDataGrid() 11 { 12 //为表定义两个列名并添加到datatble中 13 DataColumn dc1 = new DataColumn("品名", typeof(string)); 14 DataColumn dc2 = new DataColumn("数量", typeof(decimal)); 15 16 _dt.Columns.Add(dc1); 17 _dt.Columns.Add(dc2); 18 19 for (int i = 0; i < 20; i++)//循环为每一列添加数据 20 { 21 DataRow newRow = _dt.NewRow(); 22 newRow["品名"] = "测试" + i.ToString(); 23 newRow["数量"] = i + 1; 24 _dt.Rows.Add(newRow); 25 } 26 dataGrid1.DataSource = _dt;//为datagrid指定数据源 27 28 29 //dataGrid1 的样式设计改变宽度 30 System.Windows.Forms.DataGridTextBoxColumn dataGridTextBoxColumn1; 31 DataGridTableStyle dataGridTableStyle1 = new System.Windows.Forms.DataGridTableStyle(); 32 33 for (int x = 0; x < _dt.Columns.Count; x++)//遍历所有的列的集合 34 { 35 36 dataGridTextBoxColumn1 = new System.Windows.Forms.DataGridTextBoxColumn(); 37 dataGridTextBoxColumn1.HeaderText = _dt.Columns[x].ColumnName; 38 dataGridTextBoxColumn1.MappingName = _dt.Columns[x].ColumnName; 39 dataGridTextBoxColumn1.Width = 100;//设置每一列的宽度 40 this.Text = dataGridTextBoxColumn1.ToString(); 41 42 43 dataGridTableStyle1.GridColumnStyles.Add(dataGridTextBoxColumn1); 44 } 45 46 this.dataGrid1.TableStyles.Add(dataGridTableStyle1); 47 dataGrid1.TableStyles[0].MappingName = _dt.TableName;//映射style对应数据源的表名,很重要,否则无数据显示 48 49 50 51 52 }