Udostępnij za pośrednictwem


My.Resources — Obiekt

Udostępnia właściwości i klasy umożliwiające uzyskiwanie dostępu do zasobów aplikacji.

Uwagi

Obiekt My.Resources zapewnia dostęp do zasobów aplikacji i umożliwia dynamiczne pobieranie zasobów dla aplikacji. Aby uzyskać więcej informacji, zobacz Zarządzanie zasobami aplikacji (.NET).

Obiekt My.Resources uwidacznia tylko zasoby globalne. Nie zapewnia dostępu do plików zasobów skojarzonych z formularzami. Musisz uzyskać dostęp do zasobów formularza z formularza.

Dostęp do plików zasobów specyficznych dla kultury aplikacji można uzyskać z My.Resources obiektu . Domyślnie My.Resources obiekt wyszukuje zasoby z pliku zasobów zgodnego z kulturą UICulture we właściwości . Można jednak zastąpić to zachowanie i określić określoną kulturę do użycia dla zasobów. Aby uzyskać więcej informacji, zobacz Zasoby w aplikacjach platformy .NET.

Właściwości

Właściwości My.Resources obiektu zapewniają dostęp tylko do odczytu do zasobów aplikacji. Aby dodać lub usunąć zasoby, użyj Projektant Project. Dostęp do zasobów dodanych za pośrednictwem Projektant projektu można uzyskać przy użyciu właściwości My.Resources.resourceName.

Możesz również dodawać lub usuwać pliki zasobów, wybierając projekt w Eksplorator rozwiązań i klikając polecenie Dodaj nowy element lub Dodaj istniejący element z menu Projekt. Dostęp do zasobów dodanych w ten sposób można uzyskać przy użyciu My.Resources.resourceFileName resourceName..

Każdy zasób ma nazwę, kategorię i wartość, a te ustawienia zasobów określają, jak właściwość dostępu do zasobu pojawia się w My.Resources obiekcie. W przypadku zasobów dodanych w programie Project Projektant:

  • Nazwa określa nazwę właściwości,

  • Dane zasobu są wartością właściwości ,

  • Kategoria określa typ właściwości:

Kategoria Typ danych właściwości
Ciągi ciąg
Obrazy Bitmap
Ikony Icon
Audio UnmanagedMemoryStream

Klasa UnmanagedMemoryStream pochodzi z Stream klasy, więc może być używana z metodami, które pobierają strumienie, takie jak Play metoda.
Pliki - Ciąg dla plików tekstowych.
- Bitmap dla plików obrazów.
- Icon dla plików ikon.
- UnmanagedMemoryStream w przypadku plików dźwiękowych.
Inne Określana przez informacje w kolumnie Typ projektanta.

Klasy

Obiekt My.Resources uwidacznia każdy plik zasobu jako klasę z udostępnionymi właściwościami. Nazwa klasy jest taka sama jak nazwa pliku zasobu. Zgodnie z opisem w poprzedniej sekcji zasoby w pliku zasobów są uwidocznione jako właściwości w klasie.

Przykład 1

W tym przykładzie tytuł formularza jest ustawiany na zasób ciągu o nazwie Form1Title w pliku zasobu aplikacji. Aby można było pracować, aplikacja musi mieć ciąg o nazwie Form1Title w pliku zasobów.

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

Przykład 2

W tym przykładzie ustawiono ikonę formularza na ikonę o nazwie Form1Icon , która jest przechowywana w pliku zasobów aplikacji. Aby można było pracować, aplikacja musi mieć ikonę o nazwie Form1Icon w pliku zasobów.

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

Przykład 3

W tym przykładzie obraz tła formularza jest ustawiany na zasób obrazu o nazwie Form1Background, który znajduje się w pliku zasobu aplikacji. W tym przykładzie aplikacja musi mieć zasób obrazu o nazwie Form1Background w pliku zasobu.

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

Przykład 4

W tym przykładzie odtwarzany jest dźwięk przechowywany jako zasób audio o nazwie Form1Greeting w pliku zasobów aplikacji. Aby można było pracować, aplikacja musi mieć zasób audio o nazwie Form1Greeting w pliku zasobu. Metoda My.Computer.Audio.Play jest dostępna tylko dla aplikacji Windows Forms.

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

Przykład 5

W tym przykładzie pobrano wersję francusko-kulturową zasobu ciągu aplikacji. Zasób ma nazwę Message. Aby zmienić kulturę używaną przez My.Resources obiekt, w przykładzie użyto metody ChangeUICulture.

W tym przykładzie do działania aplikacja musi mieć ciąg o nazwie Message w pliku zasobów, a aplikacja powinna mieć wersję francusko-kulturową tego pliku zasobu Resources.fr-FR.resx. Jeśli aplikacja nie ma francuskiej wersji pliku zasobu, My.Resource obiekt pobiera zasób z pliku zasobu domyślnej kultury.

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

Zobacz też