2012-08-23 31 views
0

我正在將傳統VB應用程序移植到C#/ Winforms。儘管絕大多數的用戶界面已經完成,但我仍然有一個問題,在挖掘之後我無法解決這個問題。我的表單包含一組組框,全部相同(除了某些標識符,例如組框名稱),其中每個框都包含多個控件。我有一個彈出的上下文菜單,它允許我打開允許我更改某些設置的子表單等。這些組框中的每個表示一個物理對象,可以禁用它們。當我禁用組框時,框中的所有孩子都會被禁用或隱藏。禁用組合框時,上下文條菜單也會更改,以便禁用上下文菜單中的某些菜單項,然後「已啓用」菜單選擇在已選中和未選中之間切換,顯示當前狀態。問題是,當我禁用其中一個組框時,該框被禁用,但當我點擊組框時,上下文菜單不再打開。這並不令人驚訝,但我試圖弄清楚如何禁用組合框,同時始終保持上下文菜單的啓用。我需要能夠禁用一個或多個這些組框;事情的方式,一旦我禁用組框,我無法再次啓用它,因爲上下文菜單不再觸發。禁用groupbox並保持上下文菜單啓用

舊的VB代碼設法做到這一點,但它不是很清楚如何和代碼是或多或少混亂我寧願不花時間逆向工程。

感謝您對我如何完成此任何建議。我想一個解決方法可能是使組合框中的所有控件都不可見,然後將組框的顏色更改爲「出現」禁用。

+2

沒有人會閱讀這一堆沒有代碼的文本,你應該編輯你的問題,提供代碼,並更具體。 – h1ghfive

回答

1

我解決了這個問題,只需隱藏所有控件並更改框的顏色,使其顯示爲禁用。