My.Resources-Objekt

Stellt Eigenschaften und Klassen für den Zugriff auf die Ressourcen der Anwendung bereit.

Bemerkungen

Mit dem My.Resources-Objekt erhalten Sie Zugriff auf die Ressourcen der Anwendung und können Ressourcen für Ihre Anwendung dynamisch abrufen. Weitere Informationen finden Sie unter Verwalten von Anwendungsressourcen (.NET).

Das My.Resources-Objekt macht nur globale Ressourcen verfügbar. Es bietet keinen Zugriff auf Ressourcendateien, die Formularen zugeordnet sind. Zugriff auf die Formularressourcen erhalten Sie über das Formular.

Sie können auf die kulturspezifischen Ressourcendateien der Anwendung über das My.Resources-Objekt zugreifen. Standardmäßig schlägt das My.Resources-Objekt Ressourcen in der Ressourcendatei nach, die der Kultur in der UICulture-Eigenschaft entspricht. Sie können dieses Verhalten jedoch außer Kraft setzen und eine bestimmte Kultur angeben, die für die Ressourcen verwendet werden soll. Weitere Informationen finden Sie unter Ressourcen in .NET-Apps.

Eigenschaften

Die Eigenschaften des My.Resources-Objekts ermöglichen schreibgeschützten Zugriff auf die Ressourcen Ihrer Anwendung. Verwenden Sie den Projekt-Designer, um Ressourcen hinzuzufügen oder zu entfernen. Sie können mithilfe von My.Resources.resourceName auf Ressourcen zugreifen, die mit dem Projekt-Designer hinzugefügt wurden.

Sie können Ressourcendateien auch hinzufügen oder entfernen, indem Sie Ihr Projekt im Projektmappen-Explorer auswählen und im Menü Projekt auf Neues Element hinzufügen oder Vorhandenes Element hinzufügen klicken. Sie können auf Ressourcen zugreifen, die auf diese Weise hinzugefügt wurden, indem Sie My.Resources.resourceFileName.resourceName verwenden.

Jede Ressource weist einen Namen, eine Kategorie und einen Wert auf, und diese Ressourceneinstellungen bestimmen, wie die Eigenschaft für den Zugriff auf die Ressource im My.Resources-Objekt angezeigt wird. Für Ressourcen, die im Projekt-Designer hinzugefügt wurden:

  • Der Name bestimmt den Namen der Eigenschaft.

  • Die Ressourcendaten sind der Wert der Eigenschaft.

  • Die Kategorie bestimmt den Typ der Eigenschaft:

Category Datentyp der Eigenschaft
Zeichenfolgen String
Images Bitmap
Symbole Icon
Audio UnmanagedMemoryStream

Die UnmanagedMemoryStream-Klasse wird von der Stream-Klasse abgeleitet, sodass sie mit Methoden verwendet werden kann, die Datenströme annehmen, z. B. mit der Play-Methode.
Dateien - Zeichenfolge für Textdateien.
- Bitmap für Bilddateien.
- Icon für Symboldateien.
- UnmanagedMemoryStream für Audiodateien.
Andere Wird durch die Informationen in der Spalte Typ des Designers bestimmt.

Klassen

Das My.Resources-Objekt macht jede Ressourcendatei als Klasse mit freigegebenen Eigenschaften verfügbar. Der Klassenname ist identisch mit dem Namen der Ressourcendatei. Wie im vorherigen Abschnitt beschrieben, werden die Ressourcen in einer Ressourcendatei als Eigenschaften in der Klasse verfügbar gemacht.

Beispiel 1

In diesem Beispiel wird der Titel eines Formulars auf die Zeichenfolgenressource mit dem Namen Form1Title in der Anwendungsressourcendatei festgelegt. Damit das Beispiel funktioniert, muss die Anwendung in ihrer Ressourcendatei über eine Zeichenfolge namens Form1Title verfügen.

Sub SetFormTitle()
    Me.Text = My.Resources.Form1Title
End Sub

Beispiel 2

Im folgenden Beispiel wird das Symbol des Formulars auf das Symbol Form1Icon festgelegt, das in der Ressourcendatei der Anwendung gespeichert ist. Damit das Beispiel funktioniert, muss die Anwendung in ihrer Ressourcendatei über ein Symbol namens Form1Icon verfügen.

Sub SetFormIcon()
    Me.Icon = My.Resources.Form1Icon
End Sub

Beispiel 3

In diesem Beispiel wird das Hintergrundbild eines Formulars auf die Bildressource mit dem Namen Form1Background festgelegt, die sich in der Anwendungsressourcendatei befindet. Damit dieses Beispiel funktioniert, muss die Anwendung in ihrer Ressourcendatei über eine Bildressource namens Form1Background verfügen.

Sub SetFormBackgroundImage()
    Me.BackgroundImage = My.Resources.Form1Background
End Sub

Beispiel 4

In diesem Beispiel wird der Sound wiedergegeben, der als Audioressource mit dem Namen Form1Greeting in der Ressourcendatei der Anwendung gespeichert ist. Damit das Beispiel funktioniert, muss die Anwendung in ihrer Ressourcendatei über eine Audioressource namens Form1Greeting verfügen. Die My.Computer.Audio.Play-Methode ist nur für Windows Forms-Anwendungen verfügbar.

Sub PlayFormGreeting()
    My.Computer.Audio.Play(My.Resources.Form1Greeting, 
        AudioPlayMode.Background)
End Sub

Beispiel 5

In diesem Beispiel wird die französische Kulturversion einer Zeichenfolgenressource der Anwendung abgerufen. Die Ressource trägt den Namen Message. Um die Kultur zu ändern, die das My.Resources-Objekt verwendet, wird im Beispiel ChangeUICulture verwendet.

Damit dieses Beispiel funktioniert, muss die Anwendung in ihrer Ressourcendatei über eine Zeichenfolge mit dem Namen Message verfügen, und die Anwendung sollte über die französische Kulturversion dieser Ressourcendatei („Resources.fr-FR.resx“) verfügen. Wenn die Anwendung nicht über die französische Kulturversion der Ressourcendatei verfügt, ruft das My.Resource-Objekt die Ressource aus der Standardkultur-Ressourcendatei ab.

Sub ShowLocalizedMessage()
    Dim culture As String = My.Application.UICulture.Name
    My.Application.ChangeUICulture("fr-FR")
    MsgBox(My.Resources.Message)
    My.Application.ChangeUICulture(culture)
End Sub

Weitere Informationen