Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Eine Anweisung versucht, einem Ausdruck einen Wert zuzuweisen. Sie können einen Wert nur beschreibbaren Variablen, Eigenschaften oder Arrayelementen zur Laufzeit zuweisen. Das folgende Beispiel veranschaulicht, wie dieser Fehler auftreten kann.
Dim yesterday As Integer
ReadOnly maximum As Integer = 45
yesterday + 1 = DatePart(DateInterval.Day, Now)
' The preceding line is an ERROR because of an expression on the left.
maximum = 50
' The preceding line is an ERROR because maximum is declared ReadOnly.
Ähnliche Beispiele könnten für Eigenschaften und Arrayelemente gelten.
Indirekter Zugriff. Indirekter Zugriff über einen Werttyp kann diesen Fehler ebenfalls auslösen. Betrachten Sie das folgende Codebeispiel, in dem versucht wird, den Wert von Point festzulegen, indem indirekt über Location darauf zugegriffen wird.
' Assume this code runs inside Form1.
Dim exitButton As New System.Windows.Forms.Button()
exitButton.Text = "Exit this form"
exitButton.Location.X = 140
' The preceding line is an ERROR because of no storage for Location.
Die letzte Anweisung des vorherigen Beispiels schlägt fehl, da sie nur eine temporäre Zuordnung für die von der Location-Eigenschaft zurückgegebene Point-Struktur erstellt. Eine Struktur ist ein Werttyp und die temporäre Struktur wird nach der Ausführung der Anweisung nicht beibehalten. Das Problem wird behoben, indem eine Variable für Location deklariert und verwendet wird, wodurch eine dauerhaftere Zuordnung für die Point-Struktur erstellt wird. Das folgende Beispiel zeigt Code, der die letzte Anweisung des vorherigen Beispiels ersetzen kann.
Dim exitLocation as New System.Drawing.Point(140, exitButton.Location.Y)
exitButton.Location = exitLocation
Fehler-ID: BC30068
So beheben Sie diesen Fehler
Wenn die Anweisung einem Ausdruck einen Wert zuweist, ersetzen Sie den Ausdruck durch eine einzelne beschreibbare Variable, Eigenschaft oder ein einzelnes Arrayelement.
Wenn die Anweisung indirekten Zugriff über einen Werttyp (in der Regel eine Struktur) ermöglicht, erstellen Sie eine Variable, die den Werttyp enthält.
Weisen Sie der Variablen die entsprechende Struktur (oder einen anderen Werttyp) zu.
Verwenden Sie die Variable, um auf die Eigenschaft zuzugreifen und einen Wert zuzuweisen.