簡體   English   中英

如何使用Winforms在網格視圖的一行中添加唯一信息?

[英]How to add unique information to a row in a gridview using winforms?

我正在使用C#和Winforms設計小型POS系統。 我正在使用網格視圖將已掃描的項目添加到交易中(正在出售的項目。)我正在根據項目類型收集一些項目的跟蹤信息。

例如,如果客戶正在購買揚聲器,耳機和新手機。 我將需要獲取有關手機的其他跟蹤信息。 我需要知道

  1. 如果手機以“新激活”或“電話升級”的形式出售
  2. 該電話的電話號碼
  3. 序列號
  4. 新的電話運營商
  5. 選擇的承運人計划。

數據庫中的每個項目都有一個類型。 如果將某種類型添加到事務中(恰好在添加之前),則可以在顯示項目時顯示另一種形式,然后在將項目實際添加到事務之前,將提升用戶填充。

我正在努力如何將其他信息添加到交易中。 我可以將帶有附加信息的隱藏列添加到gridview(一個列用於顯示電話號碼,運營商,計划,序列號。但是可能會有很多不同的隱藏列,並且我不確定是否是我唯一的選擇?

對於后端,可以使用三種方法(可能更多)。

第一種方法是讓您的數據庫表具有20個附加列,例如CustomName1,CustomValue1,CustomName2,CustomValue2等。我見過這種方法在幾個系統中使用,我個人不喜歡它,因為它的數量有限字段,很難查詢。

第二種方法是將第一種方法推廣到一個單獨的表中。 例如,這些列將是POSID,FieldName,FieldValue。

第三種方法是為每種特定類型的已售產品准備預定義的表格。

UI設計是一個單獨的問題。 一種簡單的方法是提供“更多...”按鈕,僅當選擇DGV中的單個項目時才啟用。 單擊時,它將打開一個包含其他輸入字段的表單。

另一種方法是,當選擇產品類型時,會將其他列添加到DGV。

暫無
暫無

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

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