.net 2.0 設備應用程序 windows CE 或者mobile等
WinForm DataGrid 的DataGridTableStyle用法
用查詢數據庫的結果集作為數據源,首先在winform裡拖一個datagrid
void Form2_Load(object sender, System.EventArgs e)
{
DataSet ds=BookingCar.Business.Facade.Order.QueryAllOrderStatus(); //查詢數據庫得到DataSet
dataGrid1.DataSource=ds.Tables[0]; //設定數據源
dataGrid1.CaptionText="DataGrid試驗"; //設定DataGrid的標題
DataGridTableStyle ts=new DataGridTableStyle(); //定義TableStyle
ts.MappingName=ds.Tables[0].TableName; //映射表名稱,重要
ts.ReadOnly=false; //整個DataGrid讀寫方式
//第一列
DataGridTextBoxColumn tc=new DataGridTextBoxColumn(); //定義第一列用TextBox渲染
tc.HeaderText="狀態類型"; //改變列頭的顯示
tc.MappingName=ds.Tables[0].Columns[0].ColumnName; //映射列的名稱,重要,實際就是查詢select 對因的列
tc.Alignment=HorizontalAlignment.Center; //對齊方式
tc.ReadOnly=true; //指明這一列的為只讀方式
ts.PreferredColumnWidth=70; //指明Cell寬度
ts.PreferredRowHeight=20; //指名Cell高度
ts.AlternatingBackColor=Color.LightGray;
ts.GridColumnStyles.Add(tc); //為ColumnStyle添加上面的TextBox
//第二列
tc=new DataGridTextBoxColumn();
tc.HeaderText="狀態描述";
tc.MappingName=ds.Tables[0].Columns[1].ColumnName;
ts.PreferredColumnWidth=200;
ts.PreferredRowHeight=20;
ts.AlternatingBackColor=Color.LightGray;
ts.GridColumnStyles.Add(tc);
//把TableStyle添加到DataGrid的tablestyle中
dataGrid1.TableStyles.Add(ts);
}
例子:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
namespace TestDataGridCE
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
DataTable dt = new DataTable("名稱");
dt.Columns.Add("列1");
dt.Columns.Add("列2");
dt.Columns.Add("列3");
dt.Rows.Add(new string[] { "HoverTree", "a2", "a3" });
dt.Rows.Add(new string[] { "b1", "b2", "b3" });
dataGrid1.DataSource = dt;
//dataGrid1 = "DataGrid試驗"; //設定DataGrid的標題
DataGridTableStyle ts = new DataGridTableStyle(); //定義TableStyle
ts.MappingName = dt.TableName; //映射表名稱,重要
//ts.ReadOnly = false; //整個DataGrid讀寫方式
//第一列
DataGridTextBoxColumn tc = new DataGridTextBoxColumn(); //定義第一列用TextBox渲染
tc.HeaderText = "第一列"; //改變列頭的顯示
tc.MappingName = dt.Columns[0].ColumnName; //映射列的名稱,重要,實際就是查詢select 對因的列
tc.Width = 100;
//tc.Alignment = HorizontalAlignment.Center; //對齊方式
//tc.ReadOnly = true; //指明這一列的為只讀方式
//ts.PreferredColumnWidth = 70; //指明Cell寬度
//ts.PreferredRowHeight = 20; //指名Cell高度
//ts.AlternatingBackColor = Color.LightGray;
ts.GridColumnStyles.Add(tc); //為ColumnStyle添加上面的TextBox
//第二列
tc = new DataGridTextBoxColumn();
tc.HeaderText = "第二列";
tc.MappingName = dt.Columns[1].ColumnName;
//ts.PreferredColumnWidth = 50;
//ts.PreferredRowHeight = 20;
//ts.AlternatingBackColor = Color.LightGray;
tc.Width = 50;
ts.GridColumnStyles.Add(tc);
//第三列
tc = new DataGridTextBoxColumn();
tc.HeaderText = "第三列";
tc.MappingName = dt.Columns[2].ColumnName;
//ts.PreferredColumnWidth = 50;
//ts.PreferredRowHeight = 20;
//ts.AlternatingBackColor = Color.LightGray;
tc.Width = 30;
ts.GridColumnStyles.Add(tc);
//把TableStyle添加到DataGrid的tablestyle中
dataGrid1.TableStyles.Add(ts);
}
}
}