我正在创建一个应用程序,我在表单中的dataGridView1
中获取了一些数据。我想在一些变量中访问我的最后一行数据,比如我想在变量中存储列并使用它们。我知道如何在GridView Cell单击事件中执行此操作,但我想在循环中使用它,就像每10秒后新数据从数据库到dataGridView1,我希望在变量中访问最后一行。
下面是我在dataGridView中加载数据的代码
using (var con = new SqlConnection(ConStr))
{
string query = "SELECT * FROM CHECKINOUT";
using (var cmd = new SqlCommand(query, con))
{
con.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
}
答案 0 :(得分:1)
您是否可以只访问数据集中表0的最后一行,然后将所有列分配给变量
int lastRow = 0;
lastRow = ds.Tables(0).rows.count - 1;
string col1 = ds.Tables(0).Rows(lastRow)(0).tostring.trim;
使用您可以执行的代码:
using (var con = new SqlConnection(ConStr))
{
string query = "SELECT * FROM CHECKINOUT";
using (var cmd = new SqlCommand(query, con))
{
con.Open();
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0].DefaultView;
}
}
int lastRow = 0;
lastRow = ds.Tables(0).rows.count - 1;
string col1 = ds.Tables(0).Rows(lastRow)(0).tostring.trim;
string col2 = ds.Tables(0).Rows(lastRow)(1).tostring.trim;
string col3 = ds.Tables(0).Rows(lastRow)(2).tostring.trim;