WorkflowView.ShadowDepth 屬性

定義

取得或設定 ShadowDepthWorkflowView

public:
 property int ShadowDepth { int get(); void set(int value); };
public int ShadowDepth { get; set; }
member this.ShadowDepth : int with get, set
Public Property ShadowDepth As Integer

屬性值

Shadow Depth,以像素為單位。

範例

下列程式碼範例將示範如何使用 WorkflowView 方法取得 GetView 類別的執行個體。 此程式碼會設定數個 WorkflowView 屬性,包括 HScrollBarVScrollBarShadowDepth,並呼叫 FitToScreenSize 方法。

IDesignerHost designerHost = designSurface.GetService(typeof(IDesignerHost)) as IDesignerHost;
if (designerHost != null && designerHost.RootComponent != null)
{
    IRootDesigner rootDesigner = designerHost.GetDesigner(designerHost.RootComponent) as IRootDesigner;
    if (rootDesigner != null)
    {
        UnloadWorkflow();

        this.designSurface = designSurface;
        this.loader = loader;
        this.workflowView = rootDesigner.GetView(ViewTechnology.Default) as WorkflowView;
        this.splitContainer1.Panel1.Controls.Add(this.workflowView);
        this.workflowView.Dock = DockStyle.Fill;
        this.workflowView.TabIndex = 1;
        this.workflowView.TabStop = true;
        this.workflowView.HScrollBar.TabStop = false;
        this.workflowView.VScrollBar.TabStop = false;
        this.workflowView.ShadowDepth = 0;
        this.workflowView.EnableFitToScreen = true;
        this.workflowView.Focus();

        ISelectionService selectionService = GetService(typeof(ISelectionService)) as ISelectionService;
        IComponentChangeService changeService = GetService(typeof(IComponentChangeService)) as IComponentChangeService;

        if (selectionService != null)
        {
            selectionService.SelectionChanged += new EventHandler(OnSelectionChanged);
        }

        if (changeService != null)
        {
            changeService.ComponentAdded += new ComponentEventHandler(changeService_ComponentAdded);
            changeService.ComponentChanged += new ComponentChangedEventHandler(changeService_ComponentChanged);
            changeService.ComponentRemoved += new ComponentEventHandler(changeService_ComponentRemoved);
            changeService.ComponentRename += new ComponentRenameEventHandler(changeService_ComponentRename);
        }
    }
}
Dim designerHost As IDesignerHost = CType(designSurface.GetService(GetType(IDesignerHost)), IDesignerHost)
If designerHost IsNot Nothing And designerHost.RootComponent IsNot Nothing Then

    Dim rootDesigner As IRootDesigner = CType(designerHost.GetDesigner(designerHost.RootComponent), IRootDesigner)
    If rootDesigner IsNot Nothing Then
        UnloadWorkflow()

        Me.designSurface = designSurface
        Me.loader = loader
        Me.workflowView = CType(rootDesigner.GetView(ViewTechnology.Default), WorkflowView)
        Me.splitContainer1.Panel1.Controls.Add(Me.workflowView)
        Me.workflowView.Dock = DockStyle.Fill
        Me.workflowView.TabIndex = 1
        Me.workflowView.TabStop = True
        Me.workflowView.HScrollBar.TabStop = False
        Me.workflowView.VScrollBar.TabStop = False
        Me.workflowView.ShadowDepth = 0
        Me.workflowView.EnableFitToScreen = True
        Me.workflowView.Focus()

        Dim selectionService As ISelectionService = CType(GetService(GetType(ISelectionService)), ISelectionService)
        Dim changeService As IComponentChangeService = CType(GetService(GetType(IComponentChangeService)), IComponentChangeService)

        If selectionService IsNot Nothing Then
            AddHandler selectionService.SelectionChanged, AddressOf OnSelectionChanged
        End If

        If changeService IsNot Nothing Then

            AddHandler changeService.ComponentAdded, AddressOf changeService_ComponentAdded
            AddHandler changeService.ComponentChanged, AddressOf changeService_ComponentChanged
            AddHandler changeService.ComponentRemoved, AddressOf changeService_ComponentRemoved
            AddHandler changeService.ComponentRename, AddressOf changeService_ComponentRename
        End If
    End If
End If

在上列程式碼中呼叫的 UnloadWorkflow 方法移除了目前載入的工作流程,以準備載入新的工作流程,實作如下:

private void UnloadWorkflow()
{
    IDesignerHost designerHost = GetService(typeof(IDesignerHost)) as IDesignerHost;
    if (designerHost != null && designerHost.Container.Components.Count > 0)
        WorkflowLoader.DestroyObjectGraphFromDesignerHost(designerHost, designerHost.RootComponent as Activity);

    if (this.designSurface != null)
    {
        this.designSurface.Dispose();
        this.designSurface = null;
    }

    if (this.workflowView != null)
    {
        Controls.Remove(this.workflowView);
        this.workflowView.Dispose();
        this.workflowView = null;
    }
}
Private Sub UnloadWorkflow()


    Dim designerHost As IDesignerHost = CType(GetService(GetType(IDesignerHost)), IDesignerHost)
    If designerHost IsNot Nothing And designerHost.Container.Components.Count > 0 Then
        WorkflowLoader.DestroyObjectGraphFromDesignerHost(designerHost, CType(designerHost.RootComponent, Activity))
    End If

    If Me.designSurface IsNot Nothing Then
        Me.designSurface.Dispose()
        Me.designSurface = Nothing
    End If


    If Me.workflowView IsNot Nothing Then
        Controls.Remove(Me.workflowView)
        Me.workflowView.Dispose()
        Me.workflowView = Nothing
    End If

End Sub

備註

使用 ShadowDepth 以取得或調整工作流程設計介面上文字的 Shadow Depth。

適用於