WorkflowView.ShadowDepth Property

Definition

Gets or sets the ShadowDepth for the WorkflowView.

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

Property Value

The shadow depth in pixels.

Examples

The following code example demonstrates how you can obtain an instance of the WorkflowView class using the GetView method. The code then sets several WorkflowView properties, including HScrollBar and VScrollBar, ShadowDepth, and calls the FitToScreenSize method.

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

The UnloadWorkflow method that is called in the code above removes a currently loaded workflow in order to prepare for the loading of a new workflow and is implemented as follows:

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

Remarks

Use the ShadowDepth to get or adjust the shadow depth of text shown on the workflow design surface.

Applies to