问题描述
我有一个访问数据库,并且像下面的代码一样,从那里获取数据到DataGridView。我从选项卡的控件中获取数据。如何将DataTable添加到选项卡的控件。我想这样做是因为从datagridview获取数据非常慢。
将数据添加到datagridview并将datagridview添加到选项卡页面的控件
da = new OleDbDataAdapter("SELECT Robotlar FROM A_Robotlar",con);
ds = new DataSet();
con.open();
da.Fill(ds,"A_Robotlar");
DataTable dt = ds.Tables["A_Robotlar"];
int count = dt.Rows.Count;
if (count > 0)
{
tabControl1.TabPages.Clear();
for (int i = 0; i < count; i++)
{
da = new OleDbDataAdapter("SELECT *FROM " + dt.Rows[i][0].ToString(),con);
ds = new DataSet();
da.Fill(ds,dt.Rows[i][0].ToString());
tabControl1.TabPages.Add(dt.Rows[i][0].ToString());
tabControl1.TabPages[i].Controls.Add(new DataGridView()
{
Name = "grid_" + dt.Rows[i][0].ToString(),Dock = DockStyle.Fill,AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill,RowHeadersWidthSizeMode = DataGridViewRowHeadersWidthSizeMode.disableResizing,ColumnHeadersHeightSizeMode = DataGridViewColumnHeadersHeightSizeMode.AutoSize,AllowUserToResizeRows = false,AllowUserToResizeColumns = false,RowHeadersVisible = false,DataSource = ds.Tables[dt.Rows[i][0].ToString()]
});
}
}
con.Close();
从控件获取数据
foreach (TabPage tbp in tabControl1.TabPages)
{
foreach (Control ctrl in tbp.Controls)
{
if (ctrl is DataGridView)
{
DataGridView newDgv = ctrl as DataGridView;
for (int i = 0; i < newDgv.Rows.Count-1; i++)
{
chroMetarayici.FindElement(By.ClassName("_3FRCZ")).SendKeys(newDgv.Rows[i].Cells[4].Value.ToString() + OpenQA.Selenium.Keys.Enter);
Thread.Sleep(50);
chroMetarayici.FindElement(By.ClassName("_3uMse")).SendKeys(tbp.Text + " " + Sinyal);
Thread.Sleep(100);
chroMetarayici.FindElement(By.ClassName("_3uMse")).SendKeys(OpenQA.Selenium.Keys.Enter);
Thread.Sleep(50);
}
}
}
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)