2楼的代码,在 sum += Convert.ToDecimal(gridview1.Rows[i].Cells[数字列列号].Text.Trim()); 提示如下:“System.Windows.Forms.DataGridViewCell”并不包含“Text”的定义
int sun=0; fto(int i=0;i<datagridview.Rows;i++) { sun=sun+Convert.ToInt32(this.dataGridView1.SelectedCells[3].Value.ToString()); } 或int Total = 0; OleDbConnection con = new OleDbConnection("provider=microsoft.jet.OLEDB.4.0;Data source=.\\odc.db"); con.Open(); OleDbCommand com = new OleDbCommand("select top 1000 * from goods", con); OleDbDataReader odr = null; odr = com.ExecuteReader(); if (odr != null) { while (odr.Read()) { Total = Total + Convert.ToInt32(odr["数量"].ToString()); } } con.Close();
如果不分页的话,可以直接在绑定的时候把值算出来,如果分页就需要手动加了。
string ste = this.dataGridView1.SelectedCells[3].Value.ToString();
对的,没有分页的话就将检索的数据源中,这一列的值累加
然后设置到文本框中如果有分页
在gridview指定数据源
gridview1.DataSource = dt;
gridview1.DataBind();//之后添加
double sum = 0;
for(int i=0;i<gridview1.Rows.Count;i++)
{
sum += Convert.ToDecimal(gridview1.Rows[i].Cells[数字列列号].Text.Trim());
}
textbox1.Text = sum.ToString();
提示如下:“System.Windows.Forms.DataGridViewCell”并不包含“Text”的定义
int sun=0;
fto(int i=0;i<datagridview.Rows;i++)
{
sun=sun+Convert.ToInt32(this.dataGridView1.SelectedCells[3].Value.ToString());
}
或int Total = 0;
OleDbConnection con = new OleDbConnection("provider=microsoft.jet.OLEDB.4.0;Data source=.\\odc.db");
con.Open();
OleDbCommand com = new OleDbCommand("select top 1000 * from goods", con);
OleDbDataReader odr = null;
odr = com.ExecuteReader();
if (odr != null)
{
while (odr.Read())
{
Total = Total + Convert.ToInt32(odr["数量"].ToString());
}
}
con.Close();
fto(int i=0;i<datagridview.Rows;i++)
{
sun=sun+Convert.ToInt32(dataGridView2[列, i(行)].Value.ToString());
}
首先数据源为DataView,再写表格的DataBindingComplete事件 private void dg1_DataBindingComplete(object sender, DataGridViewBindingCompleteEventArgs e)
{
txt1.Text = dataView1.Table.Compute("sum(金额)", dataView.RowFilter).ToString();
}
自己转换下啊。
把int改用double 类型。
Convert.ToInt32更改为convert.todouble.灵活变通啊.
如果是可以编辑的,绑定的时候把合值算出来写到TEXT中,再GrdDantai_CellBeginEdit事件中记录datagridview1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value为编辑前的值和在datagridview中的GrdDantai_CellEndEdit事件中记录datagridview1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value为编辑后的值,在GrdDantai_CellEndEdit事件中做加减就可以了,
for(int i=0;i<datagridview.Rows;i++)
{
sun=sun+Convert.ToDecimal(this.dataGridView1.Rows[i].Cell["列名"].Value.ToString());
}textbox1.Text = sun.ToString();
for(int i=0;i<datagridview1.Rows.Count;i++)
{
sun=sun+Convert.ToDecimal(this.dataGridView1.Rows[i].Cell["列名"].Value.ToString());
}textbox1.Text = sun.ToString();
这一句就提示不包含cell的定义。另外13楼提到的在绑定时就算出来,这个要如何实现的?是要写代码呢还是仅仅对控件设置一下就好了?
这里面的3是什么意思?
SelectedCells[3]是代表第四列,那么SelectedColumns[3]又代表什么呢?我看vs2005解释说,SelectedCells是指定单元格集合,SelectedColumns是指定列集合。那么不是该用SelectedColumns吗?
DataTable dt = ds.Tables[0];
int Count = 0;
for(int i = 0; i < dt.Rows.Count; i++)
{
Count += int.Parse(dt.Rows[i]["数字字段"].ToString())
}textbox1.Text = Count.ToString();---------------------------这样也行..
SqlConnection con = Happytime.creatAAA();
con.Open();
SqlDataAdapter cmd = new SqlDataAdapter("select DCM 菜名,DMoney 单价,DSL 数量,DZJ 总消费 from DCZKtable where DZMC='"+textBox1.Text+"'",con);
DataSet aa = new DataSet();
cmd.Fill(aa);
dataGridView1.DataSource = aa.Tables[0];
con.Close();
将数据查询出来后怎么打代码啊?请高手解答