This documentation is archived and is not being maintained.

WorkflowView.ShadowDepth Property

Gets or sets the ShadowDepth for the WorkflowView.

Namespace:  System.Workflow.ComponentModel.Design
Assembly:  System.Workflow.ComponentModel (in System.Workflow.ComponentModel.dll)

public int ShadowDepth { get; set; }

Property Value

Type: System.Int32
The shadow depth in pixels.

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

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);
        }
    }
}


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;
    }
}


.NET Framework

Supported in: 4, 3.5, 3.0

Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Show: