Application Klasse

Definition

Stellt static-Methoden und Eigenschaften für die Verwaltung einer Anwendung zur Verfügung, z. B. Methoden zum Starten und Beenden einer Anwendung, zum Verarbeiten von Windows-Meldungen sowie Eigenschaften für das Abrufen von Informationen zu einer Anwendung. Diese Klasse kann nicht vererbt werden.

public ref class Application sealed
public sealed class Application
type Application = class
Public NotInheritable Class Application
Vererbung
Application

Beispiele

Im folgenden Codebeispiel werden Zahlen in einem Listenfeld in einem Formular aufgelistet. Jedes Mal, wenn Sie auf button1klicken, fügt die Anwendung der Liste eine weitere Nummer hinzu.

Die Main Methode ruft Run auf, um die Anwendung zu starten, die das Formular listBox1 erstellt, und button1. Wenn der Benutzer auf klickt button1, wird die button1_Click Methode angezeigt MessageBox. Wenn der Benutzer auf die MessageBoxListe klicktNo, fügt die button1_Click Methode eine Zahl hinzu. Wenn der Benutzer auf Yesklickt, ruft Exit die Anwendung alle verbleibenden Nachrichten in der Warteschlange ab, und beenden Sie es dann.

Hinweis

Der Aufruf, der Exit in Teilvertrauenswürdiger Weise fehlschlägt.

public ref class Form1: public System::Windows::Forms::Form
{
private:
   Button^ button1;
   ListBox^ listBox1;

public:
   Form1()
   {
      button1 = gcnew Button;
      button1->Left = 200;
      button1->Text =  "Exit";
      button1->Click += gcnew EventHandler( this, &Form1::button1_Click );
      listBox1 = gcnew ListBox;
      this->Controls->Add( button1 );
      this->Controls->Add( listBox1 );
   }

private:
   void Form1::button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      int count = 1;
      
      // Check to see whether the user wants to exit 
      // the application. If not, add a number to the list box.
      while ( MessageBox::Show(  "Exit application?",  "", MessageBoxButtons::YesNo ) == ::DialogResult::No )
      {
         listBox1->Items->Add( count );
         count += 1;
      }

      
      // The user wants to exit the application. 
      // Close everything down.
      Application::Exit();
   }

};

int main()
{
   
   // Starts the application.
   Application::Run( gcnew Form1 );
}
public class Form1 : Form
{
    [STAThread]
    public static void Main()
    {
        // Start the application.
        Application.Run(new Form1());
    }

    private Button button1;
    private ListBox listBox1;

    public Form1()
    {
        button1 = new Button();
        button1.Left = 200;
        button1.Text = "Exit";
        button1.Click += new EventHandler(button1_Click);

        listBox1 = new ListBox();
        this.Controls.Add(button1);
        this.Controls.Add(listBox1);
    }

    private void button1_Click(object sender, System.EventArgs e)
    {
        int count = 1;
        // Check to see whether the user wants to exit the application.
        // If not, add a number to the list box.
        while (MessageBox.Show("Exit application?", "",
            MessageBoxButtons.YesNo)==DialogResult.No)
        {
            listBox1.Items.Add(count);
            count += 1;
        }

        // The user wants to exit the application.
        // Close everything down.
        Application.Exit();
    }
}
Public Class Form1 
    Inherits Form

    <STAThread()> _
     Shared Sub Main()
        ' Start the application.
        Application.Run(New Form1)
    End Sub

    Private WithEvents button1 As Button
    Private WithEvents listBox1 As ListBox

    Public Sub New()
        button1 = New Button
        button1.Left = 200
        button1.Text = "Exit"

        listBox1 = New ListBox
        Me.Controls.Add(button1)
        Me.Controls.Add(listBox1)
    End Sub

    Private Sub button1_Click(ByVal sender As Object, _
        ByVal e As System.EventArgs) Handles button1.Click
        Dim count As Integer = 1
        ' Check to see whether the user wants to exit the application.
        ' If not, add a number to the list box.
        While (MessageBox.Show("Exit application?", "", _
            MessageBoxButtons.YesNo) = DialogResult.No)

            listBox1.Items.Add(count)
            count += 1

        End While

        ' The user wants to exit the application. 
        ' Close everything down.
        Application.Exit()
    End Sub

End Class

Hinweise

Die Application Klasse verfügt über Methoden zum Starten und Beenden von Anwendungen und Threads und zum Verarbeiten von Windows Nachrichten wie folgt:

  • Run startet eine Anwendungsnachrichtsschleife im aktuellen Thread und macht optional ein Formular sichtbar.

  • Exit oder ExitThread beendet eine Nachrichtenschleife.

  • DoEvents verarbeitet Nachrichten, während sich Ihr Programm in einer Schleife befindet.

  • AddMessageFilterfügt dem Anwendungsnachrichtenpumpe einen Nachrichtenfilter hinzu, um Windows Nachrichten zu überwachen.

  • IMessageFilter ermöglicht es Ihnen, ein Ereignis zu beenden, bevor Sie einen Ereignishandler aufrufen oder spezielle Vorgänge ausführen.

Diese Klasse verfügt CurrentCulture über und CurrentInputLanguage Eigenschaften, um Kulturinformationen für den aktuellen Thread abzurufen oder festzulegen.

Sie können keine Instanz dieser Klasse erstellen.

Eigenschaften

AllowQuit

Ruft einen Wert ab, der angibt, ob der Aufrufer diese Anwendung beenden kann.

CommonAppDataPath

Ruft den Pfad für die Anwendungsdaten ab, die von allen Benutzern gemeinsam genutzt werden.

CommonAppDataRegistry

Ruft den Registrierungsschlüssel für die Anwendungsdaten ab, die von allen Benutzern gemeinsam genutzt werden.

CompanyName

Ruft den der Anwendung zugeordneten Firmennamen ab.

CurrentCulture

Ruft die Kulturinformationen für den aktuellen Thread ab oder legt diese fest.

CurrentInputLanguage

Ruft die aktuelle Eingabesprache für den aktuellen Thread ab oder legt diese fest.

ExecutablePath

Ruft den Pfad einschließlich des Namens der ausführbaren Datei ab, die zum Starten der Anwendung verwendet wurde.

HighDpiMode

Ruft den aktuellen Modus mit hohem DPI-Wert für die Anwendung ab.

LocalUserAppDataPath

Ruft den Pfad für die Anwendungsdaten eines lokalen Benutzers ab, der kein Roaming verwendet.

MessageLoop

Ruft einen Wert ab, der angibt, ob für diesen Thread eine Nachrichtenschleife vorhanden ist.

OpenForms

Ruft eine Auflistung offener Formulare ab, die sich im Besitz der Anwendung befinden.

ProductName

Ruft den dieser Anwendung zugeordneten Produktnamen ab.

ProductVersion

Ruft die dieser Anwendung zugeordnete Produktversion ab.

RenderWithVisualStyles

Ruft einen Wert ab, der angibt, ob die aktuelle Anwendung Steuerelemente mit visuellen Stilen zeichnet.

SafeTopLevelCaptionFormat

Ruft die Formatzeichenfolge ab, die den Beschriftungen der Fenster auf oberster Ebene zugewiesen wird, wenn diese mit einem Warnbanner angezeigt werden, oder legt diese fest.

StartupPath

Ruft den Pfad ohne den Namen der ausführbaren Datei ab, die zum Starten der Anwendung verwendet wurde.

UserAppDataPath

Ruft den Pfad für die Anwendungsdaten eines Benutzers ab.

UserAppDataRegistry

Ruft den Registrierungsschlüssel für die Anwendungsdaten eines Benutzers ab.

UseVisualStyles

Ruft einen Wert ab, der angibt, ob visuelle Stile für die Anwendung aktiviert sind.

UseWaitCursor

Ruft ab oder legt fest, ob der Wartecursor für alle offenen Formulare der Anwendung verwendet wird.

VisualStyleState

Ruft einen Wert ab, der angibt, wie visuelle Stile für Anwendungsfenster übernommen werden.

Methoden

AddMessageFilter(IMessageFilter)

Fügt einen Meldungsfilter zum Überwachen von Windows-Meldungen beim Weiterleiten an das Ziel hinzu.

DoEvents()

Verarbeitet alle Windows-Meldungen, die sich derzeit in der Meldungswarteschlange befinden.

EnableVisualStyles()

Aktiviert visuelle Stile für die Anwendung.

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
Exit()

Weist alle Nachrichtensysteme an, die Verarbeitung zu beenden, und schließt alle Anwendungsfenster, sobald die Meldungen verarbeitet wurden.

Exit(CancelEventArgs)

Weist alle Nachrichtensysteme an, die Verarbeitung zu beenden, und schließt alle Anwendungsfenster, sobald die Meldungen verarbeitet wurden.

ExitThread()

Verlässt die Nachrichtenschleife für den aktuellen Thread und schließt alle Fenster des Threads.

FilterMessage(Message)

Führt etwaige Filter für eine Fenstermeldung aus und gibt eine Kopie der geänderten Meldung zurück.

GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
OleRequired()

Initialisiert OLE für den aktuellen Thread.

OnThreadException(Exception)

Löst das ThreadException-Ereignis aus.

RaiseIdle(EventArgs)

Löst das Idle-Ereignis in gehosteten Szenarien aus.

RegisterMessageLoop(Application+MessageLoopCallback)

Registriert einen Rückruf für die Prüfung, ob die Nachrichtenschleife in gehosteten Umgebungen ausgeführt wird.

RemoveMessageFilter(IMessageFilter)

Entfernt einen Meldungsfilter aus dem Nachrichtensystem der Anwendung.

Restart()

Schließt die Anwendung und startet sofort eine neue Instanz.

Run()

Beginnt die Ausführung einer Standardmeldungsschleife einer Anwendung für den aktuellen Thread ohne Formular.

Run(ApplicationContext)

Beginnt die Ausführung einer Standardnachrichtenschleife einer Anwendung für den aktuellen Thread mit einem ApplicationContext.

Run(Form)

Beginnt die Ausführung einer Standardnachrichtenschleife einer Anwendung für den aktuellen Thread und zeigt das angegebene Formular an.

SetCompatibleTextRenderingDefault(Boolean)

Legt für die gesamte Anwendung die Voreinstellung für die UseCompatibleTextRendering-Eigenschaft fest, die in bestimmten Steuerelementen definiert ist.

SetDefaultFont(Font)

Legt den Standardwert Font für den Prozess fest.

SetHighDpiMode(HighDpiMode)

Legt den Modus mit hohem DPI-Wert des Prozesses fest.

SetSuspendState(PowerState, Boolean, Boolean)

Versetzt das System in den Standbymodus oder Ruhezustand oder fordert an, dass das System in den Standbymodus oder Ruhezustand versetzt wird.

SetUnhandledExceptionMode(UnhandledExceptionMode)

Weist die Anwendung an, wie auf unbehandelte Ausnahmen reagiert werden soll.

SetUnhandledExceptionMode(UnhandledExceptionMode, Boolean)

Weist die Anwendung an, wie auf nicht behandelte Ausnahmen reagiert werden soll, und wendet optional threadspezifisches Verhalten an.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)
UnregisterMessageLoop()

Hebt die Registrierung des mit RegisterMessageLoop(Application+MessageLoopCallback) vorgenommenen Nachrichtenschleifenrückrufs auf.

Ereignisse

ApplicationExit

Tritt ein, wenn die Anwendung gerade beendet wird.

EnterThreadModal

Tritt ein, bevor die Anwendung in einen modalen Zustand übergeht.

Idle

Tritt ein, wenn die Anwendung die Verarbeitung beendet und gerade in den Leerlauf wechselt.

LeaveThreadModal

Tritt auf, bevor die Anwendung einen modalen Zustand verlässt.

ThreadException

Tritt beim Auslösen einer nicht abgefangenen Threadausnahme ein.

ThreadExit

Tritt ein, wenn ein Thread gerade beendet wird. Wenn der Hauptthread für eine Anwendung beendet werden soll, wird zuerst dieses Ereignis und anschließend ein ApplicationExit-Ereignis ausgelöst.

Gilt für: