WorkflowDesignerMessageFilter Kelas

Definisi

Perhatian

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

Menyediakan kelas dasar untuk semua filter pesan alur kerja.

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
Warisan
WorkflowDesignerMessageFilter
Atribut
Penerapan

Contoh

Contoh kode berikut menunjukkan filter pesan perancang kustom yang berasal dari WorkflowDesignerMessageFilter. Kelas , bernama CustomMessageFilter, mengambil alih sejumlah metode kelas dasarnya termasuk OnMouseDown, , OnMouseMove, OnMouseUp, OnMouseDoubleClickOnMouseEnter, OnMouseHover, OnMouseLeave, OnDragEnter, OnDragOver, dan OnKeyDown.

Contoh kode ini adalah bagian dari Sampel SDK Hosting Designer Dasar dari file DesignerShell.cs. Untuk informasi selengkapnya, lihat Hosting Designer Dasar.

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

Keterangan

Catatan

Materi ini membahas jenis dan namespace layanan yang sudah tidak digunakan. Untuk informasi selengkapnya, lihat Tipe Yang Tidak Digunakan Lagi di Windows Workflow Foundation 4.5.

Perancang alur kerja menyediakan Strategy pola desain untuk membuat objek filter pesan yang dapat diganti untuk menangani peristiwa.

Berasal dari WorkflowDesignerMessageFilter kelas untuk membuat filter pesan yang dapat merespons peristiwa perancang alur kerja, seperti operasi seret, operasi tata letak dan cat, dan peristiwa perancang lainnya. Untuk menambahkan filter pesan kustom ke rantai filter pesan, panggil AddDesignerMessageFilter pada WorkflowView atau ganti MessageFilters properti virtual pada aktivitas akar kustom dan tambahkan filter pesan kustom ke koleksi yang dikembalikan dari kelas dasar.

Konstruktor

WorkflowDesignerMessageFilter()
Kedaluwarsa.

Saat diimplementasikan di kelas turunan, menginisialisasi instans WorkflowDesignerMessageFilter.

Properti

MessageHitTestContext
Kedaluwarsa.

HitTestInfo Mendapatkan yang menjelaskan konteks WorkflowDesignerMessageFilter.

ParentView
Kedaluwarsa.

WorkflowView Mendapatkan yang terkait dengan WorkflowDesignerMessageFilter.

Metode

Dispose()
Kedaluwarsa.

Merilis sumber daya yang digunakan oleh WorkflowDesignerMessageFilter.

Dispose(Boolean)
Kedaluwarsa.

Merilis sumber daya tidak terkelola yang WorkflowDesignerMessageFilter digunakan oleh dan secara opsional merilis sumber daya terkelola.

Equals(Object)
Kedaluwarsa.

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
Finalize()
Kedaluwarsa.

Upaya untuk membebaskan sumber daya dengan memanggil Dispose(false) sebelum objek diklaim kembali oleh pengumpulan sampah.

GetHashCode()
Kedaluwarsa.

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()
Kedaluwarsa.

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
Initialize(WorkflowView)
Kedaluwarsa.

Menginisialisasi WorkflowDesignerMessageFilter dengan yang terkait WorkflowView.

MemberwiseClone()
Kedaluwarsa.

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
OnDragDrop(DragEventArgs)
Kedaluwarsa.

Terjadi ketika tombol mouse dilepaskan di atas objek selama operasi seret.

OnDragEnter(DragEventArgs)
Kedaluwarsa.

Terjadi ketika penunjuk mouse memasuki batas objek selama operasi seret.

OnDragLeave()
Kedaluwarsa.

Terjadi ketika penunjuk mouse meninggalkan batas objek selama operasi seret.

OnDragOver(DragEventArgs)
Kedaluwarsa.

Terjadi ketika penunjuk mouse bergerak di dalam batas objek selama operasi seret.

OnGiveFeedback(GiveFeedbackEventArgs)
Kedaluwarsa.

Terjadi selama operasi seret.

OnKeyDown(KeyEventArgs)
Kedaluwarsa.

Terjadi ketika tombol ditekan.

OnKeyUp(KeyEventArgs)
Kedaluwarsa.

Terjadi ketika kunci dirilis.

OnLayout(LayoutEventArgs)
Kedaluwarsa.

Terjadi ketika objek anak harus diposisikan ulang.

OnMouseCaptureChanged()
Kedaluwarsa.

Terjadi ketika item yang dipilih dengan menyeret perubahan mouse.

OnMouseDoubleClick(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika Anda mengklik dua kali mouse.

OnMouseDown(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika tombol mouse diklik.

OnMouseEnter(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika penunjuk mouse memasuki batas objek.

OnMouseHover(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika penunjuk mouse berhenti di atas objek.

OnMouseLeave()
Kedaluwarsa.

Terjadi ketika penunjuk mouse meninggalkan batas objek.

OnMouseMove(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika penunjuk mouse bergerak saat berada di dalam batas objek.

OnMouseUp(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika tombol mouse dilepaskan.

OnMouseWheel(MouseEventArgs)
Kedaluwarsa.

Terjadi ketika roda mouse bergerak.

OnPaint(PaintEventArgs, Rectangle, AmbientTheme)
Kedaluwarsa.

Terjadi ketika pesan cat diterima.

OnPaintWorkflowAdornments(PaintEventArgs, Rectangle, AmbientTheme)
Kedaluwarsa.

Terjadi ketika alur kerja harus mengecat ulang hiasannya.

OnQueryContinueDrag(QueryContinueDragEventArgs)
Kedaluwarsa.

Terjadi selama operasi seret.

OnScroll(ScrollBar, Int32)
Kedaluwarsa.

Terjadi saat pengguna menggulir di perancang alur kerja.

OnShowContextMenu(Point)
Kedaluwarsa.

Terjadi ketika alur kerja harus menampilkan menu konteks.

OnThemeChange()
Kedaluwarsa.

Terjadi ketika tema alur kerja berubah.

ProcessMessage(Message)
Kedaluwarsa.

Terjadi ketika pesan Win32 mentah harus diproses.

ToString()
Kedaluwarsa.

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk

Lihat juga