WorkflowDesignerMessageFilter Classe

Définition

Attention

The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*

Fournit une classe de base pour tous les filtres de messages de workflow.

public ref class WorkflowDesignerMessageFilter abstract : IDisposable
public abstract class WorkflowDesignerMessageFilter : IDisposable
[System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")]
public abstract class WorkflowDesignerMessageFilter : IDisposable
type WorkflowDesignerMessageFilter = class
    interface IDisposable
[<System.Obsolete("The System.Workflow.* types are deprecated.  Instead, please use the new types from System.Activities.*")>]
type WorkflowDesignerMessageFilter = class
    interface IDisposable
Public MustInherit Class WorkflowDesignerMessageFilter
Implements IDisposable
Héritage
WorkflowDesignerMessageFilter
Attributs
Implémente

Exemples

L'exemple de code suivant montre un filtre de messages de concepteur personnalisé qui dérive du WorkflowDesignerMessageFilter. La classe, nommée CustomMessageFilter, remplace un certain nombre de ses méthodes de classe de base, y compris OnMouseDown, OnMouseMove, OnMouseUp, OnMouseDoubleClick, OnMouseEnter, OnMouseHover, OnMouseLeave, OnDragEnter, OnDragOveret OnKeyDown.

Cet exemple de code fait partie de l'exemple du Kit de développement logiciel (SDK) DesignerHosting du fichier DesignerShell.cs. Pour plus d’informations, consultez Hébergement Designer de base.

internal sealed class CustomMessageFilter : WorkflowDesignerMessageFilter
{
    #region Members and Constructor

    private bool mouseDown;
    private IServiceProvider serviceProvider;
    private WorkflowView workflowView;
    private WorkflowDesignerLoader loader;

    public CustomMessageFilter(IServiceProvider provider, WorkflowView workflowView, WorkflowDesignerLoader loader)
    {
        this.serviceProvider = provider;
        this.workflowView = workflowView;
        this.loader = loader;
    }

    #endregion

    #region MessageFilter Overridables

    protected override bool OnMouseDown(MouseEventArgs eventArgs)
    {
        //Allow other components to process this event by not returning true.
        this.mouseDown = true;
        return false;
    }

    protected override bool OnMouseMove(MouseEventArgs eventArgs)
    {
        //Allow other components to process this event by not returning true.
        if (mouseDown)
        {
            workflowView.ScrollPosition = new Point(eventArgs.X, eventArgs.Y);
        }
        return false;
    }

    protected override bool OnMouseUp(MouseEventArgs eventArgs)
    {
        //Allow other components to process this event by not returning true.
        mouseDown = false;
        return false;
    }

    protected override bool OnMouseDoubleClick(MouseEventArgs eventArgs)
    {
        mouseDown = false;
        return true;
    }

    protected override bool OnMouseEnter(MouseEventArgs eventArgs)
    {
        //Allow other components to process this event by not returning true.
        mouseDown = false;
        return false;
    }

    protected override bool OnMouseHover(MouseEventArgs eventArgs)
    {
        //Allow other components to process this event by not returning true.
        mouseDown = false;
        return false;
    }

    protected override bool OnMouseLeave()
    {
        //Allow other components to process this event by not returning true.
        mouseDown = false;
        return false;
    }

    protected override bool OnMouseWheel(MouseEventArgs eventArgs)
    {
        mouseDown = false;
        return true;
    }

    protected override bool OnMouseCaptureChanged()
    {
        //Allow other components to process this event by not returning true.
        mouseDown = false;
        return false;
    }

    protected override bool OnDragEnter(DragEventArgs eventArgs)
    {
        return true;
    }

    protected override bool OnDragOver(DragEventArgs eventArgs)
    {
        return true;
    }

    protected override bool OnDragLeave()
    {
        return true;
    }

    protected override bool OnDragDrop(DragEventArgs eventArgs)
    {
        return true;
    }

    protected override bool OnGiveFeedback(GiveFeedbackEventArgs gfbevent)
    {
        return true;
    }

    protected override bool OnQueryContinueDrag(QueryContinueDragEventArgs qcdevent)
    {
        return true;
    }

    protected override bool OnKeyDown(KeyEventArgs eventArgs)
    {
        if (eventArgs.KeyCode == Keys.Delete)
        {
            ISelectionService selectionService = (ISelectionService)serviceProvider.GetService(typeof(ISelectionService));
            if (selectionService != null && selectionService.PrimarySelection is CodeActivity)
            {
                CodeActivity codeActivityComponent = (CodeActivity)selectionService.PrimarySelection;
                CompositeActivity parentActivity = codeActivityComponent.Parent;
                if (parentActivity != null)
                {
                    parentActivity.Activities.Remove(codeActivityComponent);
                    this.ParentView.Update();
                }
                loader.RemoveActivityFromDesigner(codeActivityComponent);
            }
        }
        return true;
    }

    protected override bool OnKeyUp(KeyEventArgs eventArgs)
    {
        return true;
    }

    protected override bool OnShowContextMenu(Point menuPoint)
    {
        return true;
    }

    #endregion
}
    Friend NotInheritable Class CustomMessageFilter
        Inherits WorkflowDesignerMessageFilter

#Region "Members and Constructor"

        Private mouseDown As Boolean
        Private serviceProvider As IServiceProvider
        Private workflowView As WorkflowView
        Private loader As WorkflowDesignerLoader

        Public Sub New(ByVal provider As IServiceProvider, ByVal workflowView As WorkflowView, ByVal loader As WorkflowDesignerLoader)
            Me.serviceProvider = provider
            Me.workflowView = workflowView
            Me.loader = loader
        End Sub

#End Region

#Region "WorkflowDesignerMessageFilter Overridables"

        Protected Overrides Function OnMouseDown(ByVal eventArgs As System.Windows.Forms.MouseEventArgs) As Boolean
            ' Allow other components to process this event by not returning true.
            mouseDown = True
            Return False
        End Function

        Protected Overrides Function OnMouseMove(ByVal eventArgs As System.Windows.Forms.MouseEventArgs) As Boolean
            ' Allow other components to process this event by not returning true.
            If mouseDown Then
                workflowView.ScrollPosition = New Point(eventArgs.X, eventArgs.Y)
            End If
            Return False
        End Function

        Protected Overrides Function OnMouseUp(ByVal eventArgs As MouseEventArgs) As Boolean
            ' Allow other components to process this event by not returning true.
            mouseDown = False
            Return False
        End Function

        Protected Overrides Function OnMouseDoubleClick(ByVal eventArgs As MouseEventArgs) As Boolean
            mouseDown = False
            Return True
        End Function

        Protected Overrides Function OnMouseEnter(ByVal eventArgs As MouseEventArgs) As Boolean
            ' Allow other components to process this event by not returning true.
            mouseDown = False
            Return False
        End Function

        Protected Overrides Function OnMouseHover(ByVal eventArgs As MouseEventArgs) As Boolean
            ' Allow other components to process this event by not returning true.
            mouseDown = False
            Return False
        End Function

        Protected Overrides Function OnMouseLeave() As Boolean
            ' Allow other components to process this event by not returning true.
            mouseDown = False
            Return False
        End Function

        Protected Overrides Function OnMouseWheel(ByVal eventArgs As MouseEventArgs) As Boolean
            mouseDown = False
            Return True
        End Function

        Protected Overrides Function OnMouseCaptureChanged() As Boolean
            ' Allow other components to process this event by not returning true.
            mouseDown = False
            Return False
        End Function

        Protected Overrides Function OnDragEnter(ByVal eventArgs As DragEventArgs) As Boolean
            Return True
        End Function

        Protected Overrides Function OnDragOver(ByVal eventArgs As DragEventArgs) As Boolean
            Return True
        End Function

        Protected Overrides Function OnDragLeave() As Boolean
            Return True
        End Function

        Protected Overrides Function OnDragDrop(ByVal eventArgs As DragEventArgs) As Boolean
            Return True
        End Function

        Protected Overrides Function OnGiveFeedback(ByVal gfbevent As GiveFeedbackEventArgs) As Boolean
            Return True
        End Function

        Protected Overrides Function OnQueryContinueDrag(ByVal qcdevent As QueryContinueDragEventArgs) As Boolean
            Return True
        End Function

        Protected Overrides Function OnKeyDown(ByVal eventArgs As KeyEventArgs) As Boolean
            If eventArgs.KeyCode = Keys.Delete Then
                Dim selectionService As ISelectionService = CType(serviceProvider.GetService(GetType(ISelectionService)), ISelectionService)
                If selectionService IsNot Nothing AndAlso TypeOf selectionService.PrimarySelection Is CodeActivity Then
                    Dim codeActivityComponent As CodeActivity = CType(selectionService.PrimarySelection, CodeActivity)
                    Dim parentActivity As CompositeActivity = codeActivityComponent.Parent
                    If parentActivity IsNot Nothing Then
                        parentActivity.Activities.Remove(codeActivityComponent)
                        Me.ParentView.Update()
                    End If
                    loader.RemoveActivityFromDesigner(codeActivityComponent)
                End If
            End If
            Return True
        End Function

        Protected Overrides Function OnKeyUp(ByVal eventArgs As KeyEventArgs) As Boolean
            Return True
        End Function

        Protected Overrides Function OnShowContextMenu(ByVal menuPoint As Point) As Boolean
            Return True
        End Function

#End Region

    End Class

Remarques

Notes

Ce document décrit les types et les espaces de noms qui sont obsolètes. Pour plus d’informations, consultez Types dépréciés dans Windows Workflow Foundation 4.5.

Le concepteur de workflow fournit un modèle de conception Strategy permettant de créer des objets de filtre de messages remplaçables pour la gestion des événements.

Dérive de la classe WorkflowDesignerMessageFilter pour la création de filtres de messages qui peuvent répondre à des événements du concepteur de workflow (tels que des opérations de glisser, de mise en page et de peinture), ainsi qu'à d'autres événements du concepteur. Pour ajouter un filtre de messages personnalisés à la chaîne des filtres de messages, appelez le AddDesignerMessageFilter dans la WorkflowView ou remplacez la propriété virtuelle MessageFilters sur l’activité racine personnalisée et ajoutez le filtre de messages personnalisés à la collection retournée par la classe de base.

Constructeurs

WorkflowDesignerMessageFilter()
Obsolète.

En cas d'implémentation dans une classe dérivée, initialise une instance de WorkflowDesignerMessageFilter.

Propriétés

MessageHitTestContext
Obsolète.

Permet d'obtenir les HitTestInfo qui décrivent le contexte du WorkflowDesignerMessageFilter.

ParentView
Obsolète.

Permet d'obtenir la WorkflowView associée au WorkflowDesignerMessageFilter.

Méthodes

Dispose()
Obsolète.

Libère les ressources utilisées par le WorkflowDesignerMessageFilter.

Dispose(Boolean)
Obsolète.

Libère les ressources non managées utilisées par WorkflowDesignerMessageFilter et libère éventuellement les ressources managées.

Equals(Object)
Obsolète.

Détermine si l'objet spécifié est égal à l'objet actuel.

(Hérité de Object)
Finalize()
Obsolète.

Tente de libérer les ressources en appelant Dispose(false) avant que l'objet ne soit récupéré par un garbage collection.

GetHashCode()
Obsolète.

Fait office de fonction de hachage par défaut.

(Hérité de Object)
GetType()
Obsolète.

Obtient le Type de l'instance actuelle.

(Hérité de Object)
Initialize(WorkflowView)
Obsolète.

Initialise le WorkflowDesignerMessageFilter avec la vue WorkflowView associée.

MemberwiseClone()
Obsolète.

Crée une copie superficielle du Object actuel.

(Hérité de Object)
OnDragDrop(DragEventArgs)
Obsolète.

Se produit lorsque le bouton de la souris est relâché au-dessus d'un objet pendant une opération glisser.

OnDragEnter(DragEventArgs)
Obsolète.

Se produit lorsque le pointeur de la souris entre dans les limites d'un objet pendant une opération glisser.

OnDragLeave()
Obsolète.

Se produit lorsque le pointeur de la souris sort des limites d'un objet pendant une opération glisser.

OnDragOver(DragEventArgs)
Obsolète.

Se produit lorsque le pointeur de la souris se déplace dans les limites d'un objet pendant une opération glisser.

OnGiveFeedback(GiveFeedbackEventArgs)
Obsolète.

Se produit pendant une opération glisser.

OnKeyDown(KeyEventArgs)
Obsolète.

Se produit lors de la pression sur une touche.

OnKeyUp(KeyEventArgs)
Obsolète.

Se produit lors du relâchement d'une touche.

OnLayout(LayoutEventArgs)
Obsolète.

Se produit lorsque des objets enfants doivent être repositionnés.

OnMouseCaptureChanged()
Obsolète.

Se produit lorsque les éléments sélectionnés en faisant glisser la souris changent.

OnMouseDoubleClick(MouseEventArgs)
Obsolète.

Se produit lorsque vous double-cliquez sur le bouton de la souris.

OnMouseDown(MouseEventArgs)
Obsolète.

Se produit suite à un clic sur le bouton de la souris.

OnMouseEnter(MouseEventArgs)
Obsolète.

Se produit lorsque le curseur de souris pénètre dans les limites de l'élément.

OnMouseHover(MouseEventArgs)
Obsolète.

Se produit lorsque le pointeur de la souris s'arrête au-dessus d'un objet.

OnMouseLeave()
Obsolète.

Se produit lorsque le curseur de souris quitte les limites d'un objet.

OnMouseMove(MouseEventArgs)
Obsolète.

Se produit lorsque le pointeur de la souris se déplace alors qu'il se trouve dans les limites d'un objet.

OnMouseUp(MouseEventArgs)
Obsolète.

Se produit lorsque le bouton de la souris est relâché.

OnMouseWheel(MouseEventArgs)
Obsolète.

Se produit lorsque la roulette de la souris se déplace.

OnPaint(PaintEventArgs, Rectangle, AmbientTheme)
Obsolète.

Se produit lorsqu'un message relatif à la peinture est reçu.

OnPaintWorkflowAdornments(PaintEventArgs, Rectangle, AmbientTheme)
Obsolète.

Se produit lorsque le workflow doit repeindre ses motifs.

OnQueryContinueDrag(QueryContinueDragEventArgs)
Obsolète.

Se produit pendant une opération glisser.

OnScroll(ScrollBar, Int32)
Obsolète.

Se produit lorsqu'un utilisateur utilise le défilement dans un concepteur de workflow.

OnShowContextMenu(Point)
Obsolète.

Se produit lorsque le workflow doit afficher un menu contextuel.

OnThemeChange()
Obsolète.

Se produit lorsque le thème du workflow est modifié.

ProcessMessage(Message)
Obsolète.

Se produit lorsqu'un message Win32 brut doit être traité.

ToString()
Obsolète.

Retourne une chaîne qui représente l'objet actuel.

(Hérité de Object)

S’applique à

Voir aussi