Probleme mit Public etc

  • VB.NET

Es gibt 8 Antworten in diesem Thema. Der letzte Beitrag () ist von jvbsl.

    Probleme mit Public etc

    Ich habe folgenden Code:

    VB.NET-Quellcode

    1. Imports System.Runtime.InteropServices
    2. Public Class Form1
    3. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    4. If DwmApi. 'Hier wird WDMIsReady nicht angezeigt, warum?
    5. End Sub
    6. End Class
    7. Friend Class DwmApi
    8. bla
    9. Public Function WDMIsReady() As Boolean
    10. Try
    11. bla
    12. WDMIsReady = True
    13. Catch ex As Exception
    14. WDMIsReady = False
    15. MessageBox.Show(ex.Message)
    16. End Try
    17. End Function
    18. End Class


    Siehe Code.
    Ich möchte mit DwmApi.WDMIsReady die Function aufrufen, aber das geht nicht. Wieso?
    Edit: Das "Friend Class" durch "Public Class" zu ersetzen, bringt auch nichts.
    Module ist veraltet, am besten nimmt man Klassen

    Möp, nein. Module ist das VB-Pendant zu statischen Klassen in C#. Und die sind keineswegs veraltet. Wenn Du eine statische Klasse ohne Module in VB.NET nachbauen möchtest, müsstest Du eine NotInheritable Klasse mit privatem Konstruktor und ausschließlich shared Methoden bauen. Das ist alles andere als schön.

    Woher hast Du die Info, Module solle veraltet sein?

    Gruß FatFire

    Möp, nein. Module ist das VB-Pendant zu statischen Klassen in C#. Und die sind keineswegs veraltet. Wenn Du eine statische Klasse ohne Module in VB.NET nachbauen möchtest, müsstest Du eine NotInheritable Klasse mit privatem Konstruktor und ausschließlich shared Methoden bauen. Das ist alles andere als schön.

    Woher hast Du die Info, Module solle veraltet sein?

    ebenso MÖP:P einfach als Shared deklarieren, was dem Static in C# entspricht...natürlich geht dies nicht bei der Klasse sondern bei den einzelnen Methoden/Funktionen/Variablen usw...
    Ich wollte auch mal ne total überflüssige Signatur:
    ---Leer---