簡體   English   中英

一張桌子和兩個組合框

[英]one table and two comboboxes

我有:

Dim ds As DataSet = New DataSet
Dim dt As DataTable = New DataTable
adapter.Fill(ds, "Table")
dt = ds.Tables("Table")

cmbx1.DataSource = dt
cmbx1.DisplayMember = "field1"
cmbx1.ValueMember = "field2"

cmbx2.DataSource = dt
cmbx2.DisplayMember = "field1"
cmbx2.ValueMember = "field2"

因此,當我從cmbx1中選擇內容時,也會在cmbx2中選擇它。 為什么是這樣?

我是否需要cmbx2的dt副本才能獲得相同的值,但需要獨立選擇?

這是因為它們具有對同一對象的引用。

使用dt.Copy()解決問題。

具有與此數據表相同的結構(表架構和約束)和數據的新數據表。 如果已派生這些類,則副本也將屬於相同的派生類。 Copy和Clone方法都創建一個新的DataTable,其結構與原始DataTable相同。 由Copy方法創建的新DataTable與原始表具有相同的DataRows集,但是由Clone方法創建的新DataTable不包含任何DataRows。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM