Вы можете иметь 2 DataTables, скажем, dt1
, dt2
и объединенный dtAll
. Затем вы можете объединить 2 и установить его в DataSource
private UpdateDataSource()
{
dataGridView2.Rows.Clear();
dataGridView2.Refresh();
dtAll.Clear();
if(dt1 == null && dt2 != null)
{
dtAll = dt2;
}
else if(dt2 == null && dt1 != null)
{
dtAll = dt1;
}
else if(dt1 != null && dt2 != null)
{
dtAll = dt1.Copy();
dtAll.Merge(dt2);
}
else
{
dtAll = null;
}
dataGridView2.DataSource = dtAll;
}
Ваши обработчики событий должны выглядеть примерно так:
private void button1_Click(object sender, EventArgs e)
{
try
{
string connStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties=Excel 12.0;";
OleDbConnection conn = new OleDbConnection(connStr);
OleDbDataAdapter da = new OleDbDataAdapter("Select * from [" + testcb.SelectedItem.ToString() + "$] where [" + addcb.SelectedItem.ToString() + "] = '" + addtb.Text + "'", conn);
dt2.Clear();
da.Fill(dt2);
UpdateDataSource();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
}