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 auf einem Formular aufgelistet. Jedes Mal, wenn Sie darauf klicken button1, fügt die Anwendung der Liste eine weitere Zahl hinzu.

Die Main -Methode ruft auf Run , um die Anwendung zu starten, die das Formular erstellt, listBox1 und button1. Wenn der Benutzer klickt button1, zeigt die button1_Click -Methode ein MessageBoxan. Wenn der Benutzer auf das MessageBoxklicktNo, fügt die button1_Click -Methode der Liste eine Zahl hinzu. Wenn der Benutzer klickt Yes, ruft Exit die Anwendung auf, um alle verbleibenden Nachrichten in der Warteschlange zu verarbeiten und dann zu beenden.

Hinweis

Der Aufruf von Exit schlägt in teilweiser Vertrauensstellung fehl.

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 sowie zum Verarbeiten von Windows-Nachrichten wie folgt:

  • Run startet eine Anwendungsmeldungsschleife 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.

  • AddMessageFilter fügt der Anwendungsnachrichtenpumpe einen Nachrichtenfilter hinzu, um Windows-Nachrichten zu überwachen.

  • IMessageFilter können Sie verhindern, dass ein Ereignis ausgelöst wird oder spezielle Vorgänge vor dem Aufrufen eines Ereignishandlers ausführt.

Diese Klasse verfügt über CurrentCulture Eigenschaften zum CurrentInputLanguage Abrufen oder Festlegen von Kulturinformationen für den aktuellen Thread.

Sie können keine instance 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 den anwendungsweiten Standardwert für die UseCompatibleTextRendering für bestimmte Steuerelemente definierte Eigenschaft fest.

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: