2009-09-02 59 views
0

我在SCSF面臨一個問題。SCSF:顯示從另一個視圖按下按鈕點擊的視圖

我有兩個工作區

  1. MdiWorkspace
  2. DeckWorkspace

我有一個模塊中的兩個視圖

  1. 查看器(在mdiworkspace顯示)
  2. 屬性查看器(在deckworkspace)

在Viewer中,我在工具欄上有一個按鈕,其目的是顯示PropertyViewer(另一個視圖)。

我該如何在deckworkspace agaist按鈕單擊事件中顯示此PropertyViewer。

注意:我不使用命令[的CommandName] .AddInvoker(控制,「點擊:)和CommandHandler

回答

1

我會假設你的工具欄位於在實現MVP模式的的SmartPart有SmartPart中的按鈕點擊事件處理程序會觸發其演示者將處理的事件。您的演示者代碼如下所示:

 
// Presenter code 

protected override void OnViewSet() 
{ 
    this.View.ToolbarButtonClick += View_ToolbarButtonClick; 
} 

public void View_ToolbarButtonClick(object sender, EventArgs e) 
{ 
    // remove the handler so the property viewer 
    // will only be added the first time 
    this.View.OnToolbarButtonClick -= View_ToolbarButtonClick; 

    var propertyView = new PropertyViewer(); 
    this.WorkItem.Workspaces[WorkspaceNames.MyDeckWorkspace].Show(propertyView); 
} 
相關問題