导航
  • 主页
  • C#综合技术
  • C#互联网桌面应用
  • AppLauncher
  • WinForm
  • WPF
  • 问答

WinForm中的DataGridView从初始化到最终显示,经历的过程?引发事件的顺序?

quou2002 2006-10-19 05:29:28
以前vs2003下使用Web下的DataGrid时,还算了解它的生成流程,到了vs2005下WinForm中的DataGridView,就犯迷糊了。哪位知道其大致的初始化和事件流程?

例如:我在最后自定义一列,如果此行满足某种条件,我就在此cell填入字符“ok”,这个处理是应该放在哪个事件里?
...全文
352 点赞 收藏 2
写回复
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
Knight94 2006-10-19
参看
http://www.codeproject.com/books/PresentDataDataGridView.asp
回复
BSC 2006-10-19
要实现你说的:
“我在最后自定义一列,如果此行满足某种条件,我就在此cell填入字符“ok”,这个处理是应-该放在哪个事件里?”功能应该在定义DataColumn的时候自定义DataColumn的Expression
例如:通过价格计算税和总额
DataColumn cPrice;
DataColumn cTax;
DataColumn cTotal;

cPrice = new DataColumn();
cPrice.DataType = System.Type.GetType("System.Decimal");
cPrice.ColumnName = "price";
cPrice.DefaultValue = 50;
cPrice.ReadOnly = false;

cTax = new DataColumn();
cTax.DataType = System.Type.GetType("System.Decimal");
cTax.ColumnName = "Tax";
cTax.Expression = "price * 0.0862";//计算字段
//cTax.ReadOnly = false;

cTotal = new DataColumn();
cTotal.DataType = System.Type.GetType("System.Decimal");
cTotal.ColumnName = "total";
cTotal.Expression = "price + tax";//计算字段
//cTotal.ReadOnly = false;

DataTable dtTable = new DataTable();
dtTable.Columns.Clear();
dtTable.Columns.Add(cPrice);

dtTable.Columns.Add(cTax);
dtTable.Columns.Add(cTotal);
DataSet dsDataSet = new DataSet();
dsDataSet.Tables.Clear();
dsDataSet.Tables.Add(dtTable);

DataRow drDataRow = dsDataSet.Tables[0].NewRow();
drDataRow["price"] = 100;
dsDataSet.Tables[0].Rows.Add(drDataRow);

dataGridView1.DataSource = dsDataSet.Tables[0];
回复
发动态
发帖子
C#
创建于2007-09-28

10.4w+

社区成员

.NET技术 C#
申请成为版主
社区公告

全世界最好的语言,没有之一.