這一個困擾着我,因爲我所做的事似乎很直接。寫入衝突非常簡單Access窗體與子窗體
我有一個未結合的形式(frmAdmin
)與列表框(lstUsers
),並且還包含一個列表框(lstUsergroups
)子窗體。
lstUsers
是未綁定的,並顯示用戶名列表(行源users表中留下參加與users.fk__ContactID = contacts.pk__ContactID
聯繫人表,以便我能得到的名稱顯示)
子窗體綁定到用戶表具有過濾器pk__UserID = Forms!frmAdmin!lstUsers
lstUsergroups
顯示了用戶組列表,該列表綁定到用戶表中的fk__Usergroup
字段。
唯一涉及的VBA是lstUsers
上的單擊事件,該事件重新查詢子表單。
當我從lstUsers
中選擇一個用戶時,子表單列表框顯示用戶的用戶組選擇,但如果我選擇不同的用戶組,然後選擇另一個用戶或關閉表單,我得到寫入衝突「此記錄已被另一個用戶「等。
這看起來很簡單!什麼會導致寫入衝突?沒有其他表單是打開的,users表是一個鏈接的SQL Server表,但沒有任何觸發器應該寫入它。這只是一個表單,一個子表單和一個點擊事件。
爲什麼使用listbox而不是表單/子表單?我絕不會模擬你在子表單上描述的東西(雖然當然可能是一個組合框)。 –
我正在使用一個子窗體,它對我想讓UI工作的方式有意義。應該有一個用戶列表和一個用戶組列表。當我選擇一個用戶時,他們的用戶組應該顯示爲選中狀態,然後我應該可以通過在用戶組列表中選擇另一個項目來更改他們的用戶組。據我可以告訴這不是控制類型的問題,但告訴我,如果我錯了。 – jasongetsdown
表單和子表單對列表工作得非常好,並且它們中的數據是可編輯的,而列表框不是這種情況。這一切都取決於你想做什麼,但作爲父母(可能有一個用於導航的列表框)的連續形式,和數據表子表單(沒有列表框,但是用於選擇用戶的組合框)將是正常的UI,似乎我。 –