2014-03-28 22 views
0

我有一個WinForm應用程序,在工具欄中有一些菜單和按鈕。這些菜單中的每一個都會打開模式用戶控件。按鈕也是一樣的。在WinForms中添加動態函數的最佳實踐?

比如我得到了以下菜單:

Edit 
--> Customer 
--> Product 
--> Categories 

的用戶控件我提供像客戶內部的具體行動內幕: [Reset Password]

裏面的分類:[Print all Products]

我可以像用戶控制中的「普通」按鈕一樣執行此操作,但希望在工具欄和/或菜單結構中提供這些功能以保持佈局清潔

什麼是最佳實踐?向工具欄或菜單中的條目「奇妙」添加按鈕是否可行?或者,將第二個工具條添加到頁面頂部會更好嗎?

是否有這方面的任何設計指導原則?

爲了明確這一點:我的問題是不是關於如何TECHNICLY添加按鈕/菜單等動態地,而是提供了只存在於一個模態形式特徵時,這將是最用戶友好的方式:

  1. 顯示按鈕/菜單隻需要和隱藏不需要的時候?
  2. 同上,但使用使能/禁止,而不是顯示/隱藏需要

只是當我添加了兩個截圖

  • 顯示添加第二個工具條(希望)使其更清晰。

    第一次圖像: 模態對話框向用戶展示。應該包含一個選項,重置密碼

    二圖片: 模態對話框產品。應包含印刷細節

    Modal Dialog for Users. Should contain an option for Resetting the password

    選項

    Modal Dialog for Products. Should contain an option for printing details

  • +0

    你'UserControl'可以實現接口,可通過形式用於查詢*附加功能*(新的按鈕,新的菜單項)。或者反過來,'UserControl'可以從表單中請求一些東西,直接改變它。 – Sinatr

    +0

    「模態用戶控件」是什麼意思?它們是否出現在與主窗體分開的模式對話框中? 「神奇地添加按鈕」是什麼意思?「第二個工具條到頁面頂部」是什麼意思? - 主窗體?或用戶控件駐留的模態對話框(假設它就是這樣)? –

    +0

    @Sinatr我不需要技術幫助來解決這個問題,而是一個可用性建議。 - >更新我的問題更多詳情 –

    回答

    1

    有一個關於控制應該如何運作微軟的書面指導原則:The Windows 7 UX Guidelines是一個綜合性文件,將告訴你何時使用啓用/禁用或隱藏/顯示。有一個Windows 8的更新版本,但不包括菜單控件。一般來說,禁用/啓用通常更好,所以你的用戶界面不會跳來跳去。另外,不要禁用頂級菜單項。

    +0

    真棒。正是我需要的。謝謝。 –

    0

    一個最好的做法是引導你的事件處理程序的菜單項和按鈕到處理表示邏輯相同的表現模型類的方法(即顯示關聯的對話框)。

    +0

    按鈕和菜單已經拋出相同的事件。這個問題是關於額外的按鈕,只有當顯示特定的模式對話框時才顯示。或者我誤解了你的答案? –

    +0

    我想我誤解了你的問題。我不確定你在問什麼。在你的問題下看到我的評論。 –