全國最多中醫師線上諮詢網站-台灣中醫網
發文 回覆 瀏覽次數:1500
推到 Plurk!
推到 Facebook!

ClientDataSet在Master-Detail上面畫面更新的問題

 
stacker_liew
中階會員


發表:59
回覆:168
積分:65
註冊:2004-05-17

發送簡訊給我
#1 引用回覆 回覆 發表時間:2006-11-27 10:14:08 IP:219.95.xxx.xxx 未訂閱
請問大大,我利用ClientDataSet做了一個Master-Detail的DBGrid,出現一些怪異的情形,我曾經試過換了兩種不同的DataSource,一種是ADO,另一種是ZeosDB,兩個情形都是一樣的。

情形是這樣的,假設有兩個表格,表格甲為主表格,表格乙為副表格。表格甲有兩筆記錄,表格乙則有三筆記錄。表格乙的首兩筆記錄則為表格甲的第一筆記錄所有,第三筆則為表格甲的第二筆記錄所有。當我把這些設定都設好在ClientDataSet後,程式跑起來,滑鼠去點擊表格甲中的第一筆記錄,表格乙會正常顯示,再去點表格甲的第二筆記錄,畫面也正常顯示。再回來點第一筆,也正常,問題出現在我回去點第二筆時,表格乙出現了多出一筆一模一樣的記錄。

請問有人遇到過我這樣的問題嗎?

我用的是MySQL-5,我試過用Access 2003,效果也一樣。

希望大大明白我所要表達的問題。
stacker_liew
中階會員


發表:59
回覆:168
積分:65
註冊:2004-05-17

發送簡訊給我
#2 引用回覆 回覆 發表時間:2006-11-30 10:18:14 IP:219.95.xxx.xxx 未訂閱
解決了,原來只要在Master的DBGrid上面的OnCellClick事件中加入DetailCDS.Close;DetailCDS.Open;,以及在Detail的DBGrid上面的OnCellClick事件中加入MasterCDS.Close;MasterCDS.Open;雖然這樣看來效率上似乎不好,但想不到別的方法。

自己結案。
系統時間:2024-11-25 22:58:31
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!