天天看點

基于主從表資料錄入的處理

在前面的記錄儲存和顯示裡面,都是采用一個視圖的方式進行資料的展示和錄入的,如果對于主從表的記錄同時錄入,那麼就需要主從表兩個GridView來進行展示和資料錄入的了,對于主從表錄入相對複雜一些,具體如何操作呢?

這裡我們依舊采用分頁控件來進行資料的分頁及直接錄入資料操作,而且增加了主從表資料同時在一個GridControl界面上進行處理。

這樣主表記錄為字典類型,從表為字典明細項目,得到的資料展示界面效果如下所示。

基于主從表資料錄入的處理

當然我們可直接在底部進行資料的錄入,包括主表記錄和從表的明細記錄,都可以一氣呵成的錄入并進行儲存處理的,界面效果如下所示。

基于主從表資料錄入的處理

GridView的主從關系需要設定好集合的映射關系,我們需要通過設定GridLevelNode集合實作主從表關系的處理的。

初始化從表的GridView2和主從表關系的代碼如下所示

基于主從表資料錄入的處理

通過上面的初始化代碼,指定了主從表的關系後,我們還需要對綁定的資料源進行一定的處理,才能夠在GridControl控件上顯示主從表關系的記錄。

首先需要定義一個業務對象,用來存儲主從關系的記錄對象。

基于主從表資料錄入的處理

然後在BindData綁定資料的時候,代碼處理如下即可。

基于主從表資料錄入的處理

這樣就可以得到開始介紹的主從表界面效果了。

基于主從表資料錄入的處理

資料儲存的代碼和前面的操作類似,我們需要分别對GridView1和GridView2的資料儲存操作進行處理,如下代碼所示。

基于主從表資料錄入的處理

GridView2的字典項目明細儲存操作如下所示。

基于主從表資料錄入的處理

主從表的記錄删除這裡需要順帶介紹一下,由于主從表公用一個右鍵菜單的删除操作。

基于主從表資料錄入的處理

那麼處理的時候,我們需要判斷是操作從表還是主表記錄,對它們要分開處理,然後提示是否操作成功,如果成功,我們可以移除這行即可,避免重新更新資料導緻的焦點丢失。

基于主從表資料錄入的處理