如何重写datagridview? 如题,请给个例子。还有与datagridview配套的combo,也请给个例子。本人刚学C#。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DataGridView 本来就自带有显示 combo 的列: DataGridViewComboColumn http://bbs.bc-cn.net/thread-208598-1-1.html public partial class CustomDataGridView : DataGridView { public CustomDataGridView() { InitializeComponent(); } protected override void OnPaint(PaintEventArgs pe) { base.OnPaint(pe); } }public class DataGridViewComboEditBoxCell : DataGridViewComboBoxCell { public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle) { base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle); ComboBox comboBox = base.DataGridView.EditingControl as ComboBox; if (comboBox != null) { comboBox.DropDownStyle = ComboBoxStyle.DropDown; } } }public class DataGridViewComboEditBoxColumn : DataGridViewComboBoxColumn { public DataGridViewComboEditBoxColumn() { DataGridViewComboEditBoxCell cell = new DataGridViewComboEditBoxCell(); this.CellTemplate = cell; } } SqlConnection sql = new SqlConnection(@"Data Source=LIUFENG\SQLEXPRESS;Initial Catalog=liufeng;Integrated Security=True"); sql.Open(); SqlCommand cmd = new SqlCommand("Select * from CrmCustomer", sql); DataSet dss = new DataSet(); SqlDataAdapter da = new SqlDataAdapter(cmd); da.Fill(dss); sql.Close(); DataTable dt = dss.Tables[0]; this.dataGridView.DataSource = dt; DataGridViewComboBoxColumn colums = new DataGridViewComboBoxColumn(); colums.DataSource = dt; colums.DisplayMember = "name"; colums.ValueMember = "ID"; colums.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing; colums.HeaderText = "haha"; this.dataGridView.Columns.Add(colums);随便写了一个.主要是colums.DataSource = dt;以及colums.Items.Add()来做数据源 用 colums.DisplayMember来显示和colums.ValueMember 做值. winform sql 2005 .ent 是什么文件格式用什么软件可以打开? 字符分割. 帮帮忙. 遍历窗体控件时找不到ContextMenuStrip 如何批量打印PDF文件 c#实现excel数据高效导入到sql数据库 如何在webform中得到某个按钮控件的x、y坐标值,谢谢! 好郁闷,真的不能解决吗?,(再放50分)还是昨天的那个问题。。在线等 最后一点分了:如何让程序自己从新启动? HttpWebRequest post传参 C#winform,access, 文本框为查询条件 为什么提示插入语句错误呢?
{
public CustomDataGridView()
{
InitializeComponent();
} protected override void OnPaint(PaintEventArgs pe)
{
base.OnPaint(pe);
}
}public class DataGridViewComboEditBoxCell : DataGridViewComboBoxCell
{
public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
{
base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle); ComboBox comboBox = base.DataGridView.EditingControl as ComboBox;
if (comboBox != null)
{
comboBox.DropDownStyle = ComboBoxStyle.DropDown;
}
}
}public class DataGridViewComboEditBoxColumn : DataGridViewComboBoxColumn
{
public DataGridViewComboEditBoxColumn()
{
DataGridViewComboEditBoxCell cell = new DataGridViewComboEditBoxCell();
this.CellTemplate = cell;
}
}
SqlConnection sql = new SqlConnection(@"Data Source=LIUFENG\SQLEXPRESS;Initial Catalog=liufeng;Integrated Security=True");
sql.Open();
SqlCommand cmd = new SqlCommand("Select * from CrmCustomer", sql);
DataSet dss = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(dss);
sql.Close();
DataTable dt = dss.Tables[0];
this.dataGridView.DataSource = dt;
DataGridViewComboBoxColumn colums = new DataGridViewComboBoxColumn();
colums.DataSource = dt;
colums.DisplayMember = "name";
colums.ValueMember = "ID";
colums.DisplayStyle = DataGridViewComboBoxDisplayStyle.Nothing;
colums.HeaderText = "haha";
this.dataGridView.Columns.Add(colums);
随便写了一个.主要是colums.DataSource = dt;以及colums.Items.Add()来做数据源 用 colums.DisplayMember来显示
和colums.ValueMember 做值.