在我的程序中,我需要合并(复制或任何可行的工作)两个具有不同结构的数据表合为一体,并将其作为GridView的数据源。 第一个DataTable将总是有一行被添加,但第二个DataTable将有多行。 问题是:当第一个DataTable的行添加时,它将是GridViews数据源(向用户显示一切都很好)并且用户开始逐个插入第二个数据行,每次添加到第二个数据表,Gridview必须刷新和显示新行(全部合并在一起) 我已经尝试了很多方法,但他们都有一些问题! 我试过的最后一个代码就是这个:
public partial class Main : Form1
{
DataTable DT1 = new DataTable();
DataTable DT2 = new DataTable();
private void Form1_Load(object sender, EventArgs e)
{
DT1.Columns.Add("@number", typeof(int));
DT1.Columns.Add("@name", typeof(string));
DT1.Columns.Add("@date", typeof(string));
DT1.Columns.Add("@tel", typeof(string));
DT2.Columns.Add("@piece", typeof(string));
DT2.Columns.Add("@descrip", typeof(string));
DT2.Columns.Add("@accessories", typeof(string));
DT2.Columns.Add("@damage", typeof(string));
}
private void button1_Click(object sender, EventArgs e)
{
DT1.Rows.Add(T1.Text, T2.Text, T3.Text, T4.Text);
DT2.Rows.Add(T5.Text, T6.Text, T7.Text, T8.Text);
DT1.AcceptChanges();
DT1.Merge(DT2);
Gridview1.DataSource = DT1;
}
private void button2_Click(object sender, EventArgs e)
{
DT2.Rows.Add(T5.Text, T6.Text, T7.Text, T8.Text);
DT1.Merge(DT2);
Gridview1.DataSource = DT1;
}
当用户填写文本时,Button1将触发 每次用户在文本中插入新数据,Button2将Trriger 任何建议都欢迎