Process.OnExited Metódus

Definíció

Az eseményt emeli Exited ki.

protected:
 void OnExited();
protected void OnExited();
member this.OnExited : unit -> unit
Protected Sub OnExited ()

Példák

Az alábbi példa bemutatja, hogyan használható a OnExited metódus egy származtatott osztályban.

using System;
using System.Diagnostics;

class MyProcess : Process
{
    public void Stop()
    {
        this.CloseMainWindow();
        this.Close();
        OnExited();
    }
}
class StartNotePad
{

    public static void Main(string[] args)
    {
        MyProcess p = new MyProcess();
        p.StartInfo.FileName = "notepad.exe";
        p.EnableRaisingEvents = true;
        p.Exited += new EventHandler(myProcess_HasExited);
        p.Start();
        p.WaitForInputIdle();
        p.Stop();
    }
    private static void myProcess_HasExited(object sender, System.EventArgs e)
    {
        Console.WriteLine("Process has exited.");
    }
}
open System
open System.Diagnostics

type MyProcess() =
    inherit Process()

    member this.Stop() =
        this.CloseMainWindow() |> ignore
        this.Close()
        this.OnExited()

let myProcess_HasExited (sender: obj) (e: EventArgs) = printfn "Process has exited."

let p = new MyProcess()
p.StartInfo.FileName <- "notepad.exe"
p.EnableRaisingEvents <- true
p.Exited.AddHandler(EventHandler myProcess_HasExited)
p.Start() |> ignore
p.WaitForInputIdle() |> ignore
p.Stop()
Imports System.Diagnostics


Class MyProcess
    Inherits Process
    
    Public Sub [Stop]() 
        Me.CloseMainWindow()
        Me.Close()
        OnExited()
    
    End Sub
End Class

Class StartNotePad
    
    
    Public Shared Sub Main(ByVal args() As String) 
        Dim p As New MyProcess()
        p.StartInfo.FileName = "notepad.exe"
        p.EnableRaisingEvents = True
        AddHandler p.Exited, AddressOf myProcess_HasExited
        p.Start()
        p.WaitForInputIdle()
        p.Stop()
    
    End Sub
    
    Private Shared Sub myProcess_HasExited(ByVal sender As Object, ByVal e As System.EventArgs) 
        Console.WriteLine("Process has exited.")
    
    End Sub
End Class

Megjegyzések

OnExited az eseményt előhozó Exited API-metódus. A hívás OnExited miatt az Exited esemény bekövetkezik, és ez az egyetlen módja annak, hogy az összetevő használatával emelje fel az eseményt Process . OnExited elsődlegesen az összetevőből származó osztályok származtatásakor használatos.

Alternatív megoldásként OnExitedsaját eseménykezelőt is írhat. Saját eseménykezelő delegáltat és saját eseménykezelési módszert hozhat létre.

Note

Ha a Visual Studio környezetet használja, egy eseménykezelő delegált (AddOnExited) és egy eseménykezelési módszer (Process1_Exited) jön létre, amikor egy Process összetevőt húz egy űrlapra, és kattintson duplán az ikonra. Az esemény bekövetkezésekor Exited létrehozandó kód be lesz írva a Process1_Exited eljárásba. Nem kell létrehoznia a OnExited tagot, mert az ön számára implementálva van.

Az esemény létrehozása meghívja az eseménykezelőt egy meghatalmazotton keresztül. Az áttekintésért tekintse meg az Események kezelése és növelése című témakört.

A következőre érvényes:

Lásd még