在前面的記錄保存和顯示里面,都是采用一個視圖的方式進行數據的展示和錄入的,如果對於主從表的記錄同時錄入,那么就需要主從表兩個GridView來進行展示和數據錄入的了,對於主從表錄入相對復雜一些,具體如何操作呢?
這里我們依舊采用分頁控件來進行數據的分頁及直接錄入數據操作,而且增加了主從表數據同時在一個GridControl界面上進行處理。
這樣主表記錄為字典類型,從表為字典明細項目,得到的數據展示界面效果如下所示。
當然我們可直接在底部進行數據的錄入,包括主表記錄和從表的明細記錄,都可以一氣呵成的錄入並進行保存處理的,界面效果如下所示。
GridView的主從關系需要設置好集合的映射關系,我們需要通過設置GridLevelNode集合實現主從表關系的處理的。
初始化從表的GridView2和主從表關系的代碼如下所示
通過上面的初始化代碼,指定了主從表的關系后,我們還需要對綁定的數據源進行一定的處理,才能夠在GridControl控件上顯示主從表關系的記錄。
首先需要定義一個業務對象,用來存儲主從關系的記錄對象。
然后在BindData綁定數據的時候,代碼處理如下即可。
這樣就可以得到開始介紹的主從表界面效果了。
數據保存的代碼和前面的操作類似,我們需要分別對GridView1和GridView2的數據保存操作進行處理,如下代碼所示。
GridView2的字典項目明細保存操作如下所示。
主從表的記錄刪除這里需要順帶介紹一下,由於主從表公用一個右鍵菜單的刪除操作。
那么處理的時候,我們需要判斷是操作從表還是主表記錄,對它們要分開處理,然后提示是否操作成功,如果成功,我們可以移除這行即可,避免重新更新數據導致的焦點丟失。