您的位置:首页 > 其它

设置dataGrid的单元格可编辑

2007-07-05 10:32 155 查看
DataTable dtSource;

private void DataGridStateControl()
{
dtSource=new DataTable();
dtSource.Columns.Add(new DataColumn("货号",typeof(string)));
dtSource.Columns.Add(new DataColumn("商品名称",typeof(string)));
dtSource.Columns.Add(new DataColumn("单位",typeof(string)));
dtSource.Columns.Add(new DataColumn("数量",typeof(int)));
dtSource.Columns.Add(new DataColumn("进货价",typeof(float)));
dtSource.Columns.Add(new DataColumn("金额",typeof(float),"数量*进货价"));
this.dataGrid1.DataSource = dtSource;
dtSourceRows.Add(data_all.NewRow());
DataGridTableStyle ts = new DataGridTableStyle();//设置表格模式
DataGridTextBoxColumn aColumnTextColumn;
ts.AllowSorting = false;
ts.AlternatingBackColor = Color.LightGray;
ts.MappingName = data_all.TableName;
int numCols = data_all.Columns.Count;
for (int i = 0;i< numCols;i++)
{
aColumnTextColumn = new DataGridTextBoxColumn();
if( i!=3 )
{
//表中只允许编辑第4【数量】字段

aColumnTextColumn.ReadOnly=true;

//表中只除了第4【数量】字段鼠标允许响应

aColumnTextColumn.TextBox.MouseDown += new MouseEventHandler(TextBox_MouseDown);

}

if ( i == 0||i==5)
{
aColumnTextColumn.Width = 100;
}
if ( i == 1)
{
aColumnTextColumn.Width = 150;
}

aColumnTextColumn.MappingName = data_all.Columns[i].ColumnName;
aColumnTextColumn.HeaderText = data_all.Columns[i].ColumnName;
aColumnTextColumn.NullText = "";
aColumnTextColumn.Format = "N"; //设置为数字格式显示
ts.GridColumnStyles.Add(aColumnTextColumn);
}
this.dataGrid1.TableStyles.Add(ts);
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: