private DataTable dt = new DataTable("ResultTable"); public frmMain() { InitializeComponent(); dt.Columns.Add("列1", typeof(string)); dt.Columns.Add("列2", typeof(string)); dt.Columns.Add("列3", typeof(string)); } private void frmMain_Load(object sender, EventArgs e) { dataGridMain.DataSource = dt; DataGridTableStyle dgts = new DataGridTableStyle(); dgts.MappingName = dt.TableName; DataGridTextBoxColumn dgtbc = new DataGridTextBoxColumn(); dgtbc.HeaderText = dt.Columns[0].ColumnName; dgtbc.MappingName = dt.Columns[0].ColumnName; dgtbc.Width = (int)(0.15 * (dataGridMain.Width - 4)); dgts.GridColumnStyles.Add(dgtbc); DataGridTextBoxColumn dgtbc2 = new DataGridTextBoxColumn(); dgtbc2.HeaderText = dt.Columns[1].ColumnName; dgtbc2.MappingName = dt.Columns[1].ColumnName; dgtbc2.Width = (int)(0.15 * (dataGridMain.Width - 4)); dgts.GridColumnStyles.Add(dgtbc2); DataGridTextBoxColumn dgtbc3 = new DataGridTextBoxColumn(); dgtbc3.HeaderText = dt.Columns[2].ColumnName; dgtbc3.MappingName = dt.Columns[2].ColumnName; dgtbc3.Width = (int)(0.7 * (dataGridMain.Width - 4)); dgts.GridColumnStyles.Add(dgtbc3); dataGridMain.TableStyles.Add(dgts); }
大家自己看吧 ,可以调节DataGrid的列宽了,哈哈~