中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

winform數據如何綁定兩個表

小億
139
2023-09-08 17:16:41
欄目: 智能運維

在WinForm中,可以使用DataBinding來綁定兩個表。下面是按照步驟來實現的方法:

  1. 在Visual Studio中創建一個WinForm應用程序。

  2. 在設計視圖中,將兩個DataGridView控件拖放到窗體上,分別代表兩個表。

  3. 在代碼中,創建兩個DataTable對象,分別代表兩個表的數據。

DataTable table1 = new DataTable();
DataTable table2 = new DataTable();
  1. 假設兩個表都有一個共同的主鍵字段,基于這個主鍵字段可以進行關聯。在其中一個表中添加一個外鍵字段,用于存儲另一個表的主鍵值。
table1.Columns.Add("ID", typeof(int));
table1.Columns.Add("Name", typeof(string));
table1.Columns.Add("Table2ID", typeof(int));
table2.Columns.Add("ID", typeof(int));
table2.Columns.Add("Info", typeof(string));
  1. 假設表2是表1的從表,通過外鍵字段將兩個表關聯起來。在表1和表2中分別添加一些數據。
table1.Rows.Add(1, "John", 1);
table1.Rows.Add(2, "Tom", 2);
table1.Rows.Add(3, "Lisa", 2);
table2.Rows.Add(1, "Info 1");
table2.Rows.Add(2, "Info 2");
  1. 將兩個表分別綁定到DataGridView控件上。
dataGridView1.DataSource = table1;
dataGridView2.DataSource = table2;
  1. 在代碼中設置數據綁定。找到DataGridView控件的DataBindingComplete事件,在事件處理程序中實現綁定。
dataGridView1.DataBindingComplete += (sender, e) =>
{
foreach (DataGridViewRow row in dataGridView1.Rows)
{
int table2ID = Convert.ToInt32(row.Cells["Table2ID"].Value);
var info = table2.AsEnumerable().FirstOrDefault(r => r.Field<int>("ID") == table2ID);
row.Cells["Info"].Value = info?["Info"];
}
};

通過以上步驟,就可以將兩個表綁定到兩個DataGridView控件上,并實現兩個表之間的關聯顯示。

0
平乐县| 柘荣县| 白玉县| 常山县| 灵石县| 神池县| 河源市| 塘沽区| 临沭县| 永登县| 罗定市| 伊宁市| 调兵山市| 肇庆市| 崇信县| 高平市| 翁牛特旗| 靖宇县| 南丰县| 顺昌县| 建阳市| 乐陵市| 灌南县| 玉田县| 弥勒县| 昌乐县| 横峰县| 行唐县| 临湘市| 保德县| 沙坪坝区| 阿鲁科尔沁旗| 嘉鱼县| 车致| 平度市| 南充市| 阳曲县| 登封市| 台山市| 麟游县| 石泉县|