2009-11-03 31 views
4

我在我自己的应用程序中重新托管了工作流设计器。现在我想让工作流程视图是只读的。我知道我可以禁止拖拽&,但删除和移动也应该禁用。我仍然希望用户能够在视图中滚动。重新托管的工作流设计器 - 只读视图

任何人都可以帮忙。

最好的问候, 迈克尔

回答

2

我想出了这个solutaion:

  1. 创建一个MessageFilter的从WorkflowDesignerMessageFilter继承和它连接到WorkflowView。
  2. 覆盖的方法OnKeyDown

    if (eventArgs.KeyCode == Keys.Delete) 
        { 
         if(m_WorkflowView.AllowDrop) 
         { 
          return base.OnKeyDown(eventArgs); 
         } 
        } 
        return true; 
    

在这种情况下我设置的AllowDrop为false只读在设计时视图和真实的。如果有人有更好的建议,请告诉我。

最好的问候, 迈克尔

5

可以为了做这样的事情访问设计视图。

var designerView = myDesigner.Context.Services.GetService<DesignerView>(); 

然后设置为只读模式。

designerView.IsReadOnly = true; 

这也将使财产视图只读 - 不知道如果这是你所需要或不。

相关问题