簡體   English   中英

如何在RepositoryItemComboBox中隱藏Item?

[英]How to hide Item in RepositoryItemComboBox?

嗨,我在winform上使用devExpress。 我有一個項目清單WholeList = {Item1,Item2,Item3,Item4,Item5,Item6},還有另外兩個清單:ActionAList = {Item1,Item3,Item5},ActionBList = {Item2,Item4,Item6}。 我在表格上有一個網格視圖。 在此網格上,我有兩列“動作”和“項目”。 每列都有一個repositoryItemComboBox作為就地編輯器。

在“動作”的下拉列表中,我有“動作A”和“動作B”。 在“項目”的下拉列表中,我擁有6個項目Item1至Item6。 當我選擇ActionA時,我希望Item下拉列表僅顯示Item1,Item3和Item5。 與選擇ActionB時相同,我希望Item下拉列表僅顯示Item2,Item4和Item6。

我認為,當用戶選擇其他操作(A或B)時,我可以清除“項目”下拉列表中的repositoryItems,然后將ActionAList或ActionBList添加回repositoryItem。 但是我感到不舒服,因為此時有可能,Item下拉列表中的可用項目僅為Item1、3和5,但另一行仍可能保留ActionB和Item2。

我想知道什么是歸檔此要求的最佳方法。 我還考慮是否有任何方法可以隱藏整個列表中的某些項目。 因此,當用戶打開Item下拉菜單的編輯器時。 根據當前行的操作值,我可以僅在ActionAList或ActionBList中顯示項目。 但是創建ComboBoxItem或ImageComboBoxItem時找不到此類屬性。

感謝您的輸入!

首先,請記住,repositoryItems只是用於為GridView中的每一行構造編輯器的模板。 在單元格上控制編輯器的唯一方法是處理CustomRowCellEdit事件(您可以在其中選擇現有編輯器或創建自定義編輯器)。

其次,每次用戶更改“動作”列中的值時,必須處理CellValueChanged事件以清除“項目”列,以避免出現您所描述的情況(當Action = A時,ActionBList中的項目)。

問候,

麥基·諾維奇

暫無
暫無

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

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