WorkflowDesignerMessageFilter Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Precaución
The System.Workflow.* types are deprecated. Instead, please use the new types from System.Activities.*
Proporciona una clase base para todos los filtros de mensajes del flujo de trabajo.
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
- Herencia
-
WorkflowDesignerMessageFilter
- Atributos
- Implementaciones
Ejemplos
En el ejemplo de código siguiente se muestra un filtro de mensajes del diseñador personalizado derivado de WorkflowDesignerMessageFilter. La clase, denominada CustomMessageFilter
, invalida varios de sus métodos de clase base, como OnMouseDown, OnMouseMove, OnMouseUp, OnMouseDoubleClick, OnMouseEnter, OnMouseHover, OnMouseLeave, OnDragEnter, OnDragOver y OnKeyDown.
Este ejemplo de código forma parte del ejemplo de SDK de hospedaje de diseñador básico del archivo DesignerShell.cs. Para obtener más información, vea Hospedaje básico del diseñador.
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
Comentarios
Nota
En esta documentación se describen los tipos y espacios de nombres que están obsoletos. Para obtener más información, vea Tipos en desuso en Windows Workflow Foundation 4.5.
El diseñador de flujo de trabajo proporciona un patrón de diseño Strategy
para crear objetos de filtro de mensajes reemplazables para administrar los eventos.
Derive de la clase WorkflowDesignerMessageFilter para crear filtros de mensajes que pueden responder a los eventos de Workflow Designer, como operaciones de arrastre, operaciones de diseño y dibujo, y otros eventos del diseñador. Para agregar un filtro de mensajes personalizado a la cadena de filtros de mensajes, llame al método AddDesignerMessageFilter en WorkflowView o invalide la propiedad virtual MessageFilters en la actividad raíz personalizada y agregue el filtro de mensajes personalizado a la colección devuelta de la clase base.
Constructores
WorkflowDesignerMessageFilter() |
Obsoletos.
Cuando se implementa en una clase derivada, inicializa una instancia de un WorkflowDesignerMessageFilter. |
Propiedades
MessageHitTestContext |
Obsoletos.
Obtiene el objeto HitTestInfo que describe el contexto del WorkflowDesignerMessageFilter. |
ParentView |
Obsoletos.
Obtiene el objeto WorkflowView asociado a WorkflowDesignerMessageFilter. |
Métodos
Dispose() |
Obsoletos.
Libera los recursos que usa WorkflowDesignerMessageFilter. |
Dispose(Boolean) |
Obsoletos.
Libera los recursos no administrados que usa WorkflowDesignerMessageFilter y, de forma opcional, libera los recursos administrados. |
Equals(Object) |
Obsoletos.
Determina si el objeto especificado es igual que el objeto actual. (Heredado de Object) |
Finalize() |
Obsoletos.
Intenta liberar los recursos mediante una llamada a |
GetHashCode() |
Obsoletos.
Sirve como la función hash predeterminada. (Heredado de Object) |
GetType() |
Obsoletos.
Obtiene el Type de la instancia actual. (Heredado de Object) |
Initialize(WorkflowView) |
Obsoletos.
Inicializa el WorkflowDesignerMessageFilter con el WorkflowView asociado. |
MemberwiseClone() |
Obsoletos.
Crea una copia superficial del Object actual. (Heredado de Object) |
OnDragDrop(DragEventArgs) |
Obsoletos.
Se produce cuando se suelta el botón del mouse sobre un objeto durante una operación de arrastre. |
OnDragEnter(DragEventArgs) |
Obsoletos.
Se produce cuando el puntero del mouse se introduce dentro de los límites de un objeto durante una operación de arrastre. |
OnDragLeave() |
Obsoletos.
Se produce cuando el puntero del mouse sale de los límites de un objeto durante una operación de arrastre. |
OnDragOver(DragEventArgs) |
Obsoletos.
Se produce cuando el puntero del mouse se mueve dentro de los límites de un objeto durante una operación de arrastre. |
OnGiveFeedback(GiveFeedbackEventArgs) |
Obsoletos.
Se produce durante una operación de arrastre. |
OnKeyDown(KeyEventArgs) |
Obsoletos.
Se produce cuando se presiona una tecla. |
OnKeyUp(KeyEventArgs) |
Obsoletos.
Se produce cuando se suelta una tecla. |
OnLayout(LayoutEventArgs) |
Obsoletos.
Se produce cuando se debe cambiar la posición de los objetos secundarios. |
OnMouseCaptureChanged() |
Obsoletos.
Se produce cuando los elementos seleccionados arrastrando el mouse cambian. |
OnMouseDoubleClick(MouseEventArgs) |
Obsoletos.
Se produce al hacer doble clic con el mouse. |
OnMouseDown(MouseEventArgs) |
Obsoletos.
Se produce cuando se hace clic en un botón del mouse. |
OnMouseEnter(MouseEventArgs) |
Obsoletos.
Se produce cuando el puntero del mouse entra en los límites de un objeto. |
OnMouseHover(MouseEventArgs) |
Obsoletos.
Se produce cuando el puntero del mouse se desplaza sobre un objeto. |
OnMouseLeave() |
Obsoletos.
Se produce cuando el puntero del mouse sale de los límites de un objeto. |
OnMouseMove(MouseEventArgs) |
Obsoletos.
Se produce cuando el puntero del mouse se desplaza dentro de los límites de un objeto. |
OnMouseUp(MouseEventArgs) |
Obsoletos.
Se produce cuando se suelta el botón del mouse. |
OnMouseWheel(MouseEventArgs) |
Obsoletos.
Se produce cuando se mueve la rueda del mouse. |
OnPaint(PaintEventArgs, Rectangle, AmbientTheme) |
Obsoletos.
Se produce cuando se recibe un mensaje de dibujo. |
OnPaintWorkflowAdornments(PaintEventArgs, Rectangle, AmbientTheme) |
Obsoletos.
Se produce cuando el flujo de trabajo debe volver a dibujar sus opciones gráficas. |
OnQueryContinueDrag(QueryContinueDragEventArgs) |
Obsoletos.
Se produce durante una operación de arrastre. |
OnScroll(ScrollBar, Int32) |
Obsoletos.
Se produce cuando un usuario se desplaza en un diseñador de flujo de trabajo. |
OnShowContextMenu(Point) |
Obsoletos.
Se produce cuando el flujo de trabajo debe mostrar un menú contextual. |
OnThemeChange() |
Obsoletos.
Se produce cuando cambia el tema del flujo de trabajo. |
ProcessMessage(Message) |
Obsoletos.
Se produce cuando se debe procesar un mensaje de Win32 sin formato. |
ToString() |
Obsoletos.
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Se aplica a
Consulte también
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente GitHub Issues como mecanismo de comentarios sobre el contenido y lo sustituiremos por un nuevo sistema de comentarios. Para más información, vea:Enviar y ver comentarios de