![]() |
Expression is a value and therefore cannot be the target of an assignment
hallo iedereen,
ik ben nu begonnen (na veel lezen en uitpluizen) aan mijn form applicatie. maar ik zit met het volgend probleem. ik heb deze code ingegeven:code1 [CODE] Public Class Form2 Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click If My.Settings.Contacts Is Nothing Then My.Settings.Contacts = New System.Collections.Specialized.StringCollection If TextBox1.Text = "" Or TextBox2.Text = "" Then MsgBox("One or more fields are empty or invalid.", MsgBoxStyle.Exclamation, "Invalid Information") Else My.Settings.Contacts.Add(TextBox1.Text + " - " + TextBox2.Text) My.Settings.Save() Me.Close() End If Else If TextBox1.Text = "" Or TextBox2.Text = "" Then MsgBox("One or more fields are empty or invalid.", MsgBoxStyle.Exclamation, "Invalid Information") Else My.Settings.Contacts.Add(TextBox1.Text + " - " + TextBox2.Text) My.Settings.Save() Me.Close() End If End If TextBox1.Clear() TextBox2.Clear() Form1.ListBox1.Items.Clear() For Each Name As String In My.Settings.Contacts Form1.ListBox1.Items.Add(Name) Next End Sub End Class [CODE] maar ik krijg een errormelding: Expression is a value and therefore cannot be the target of an assignment specifiek hier: My.Settings.Contacts = New System.Collections.Specialized.StringCollection. de eerste code is van mijn bijgevoegde form in mijn applicatie.form 1 heeft deze code en geeft geen probleem [CODE] Public Class Form1 Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged Dim Contact As String = TextBox1.Text.ToString() Dim Index As Integer = ListBox1.FindString(Contact) If Index = -1 Then ListBox1.SelectedIndex = ListBox1.SelectedIndex Else ListBox1.SetSelected(Index, True) End If End Sub Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click Form2.Show() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click If ListBox1.SelectedIndex < 0 Then Else Dim dlgrst As MsgBoxResult dlgrst = MessageBox.Show("Are you sure you want to remove the contact: '" & ListBox1.SelectedItem & "'?", "Remove Contact?", MessageBoxButtons.YesNo, MessageBoxIcon.Question) If dlgrst = MsgBoxResult.Yes Then My.Settings.Contacts.Remove(ListBox1.SelectedItem) My.Settings.Save() ListBox1.Items.Clear() For Each Name As String In My.Settings.Contacts ListBox1.Items.Add(Name) Next ElseIf dlgrst = MsgBoxResult.No Then End If End If End Sub Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Try For Each Name As String In My.Settings.Contacts ListBox1.Items.Add(Name) Next Catch ex As Exception End Try End Sub End Class [CODE] ik ben hier al 7 uur aan bezig maar ik krijg het maar niet weg. ik heb ook nog een andere vraag. ik de bovenste code geef ik aan dat er twee textboxen zijn(waar er gegevens inkomen zoals de naam of telefoon) maar ik zou graag nog 4 andere textboxen toevoegen om nog meer informatie te kunnen ingeven.maar hoe doe ik dat om die erin te brengen zonder dat het een te grote warboel wordt? Want op mijn manier zal dat teveel if's bevatten. weet iemand het antwoord? groeten |
Mijn Visual Basic is wat roestig, dus ik zal je enkel wat tips geven om die forms goed af te handelen.
Maak in je Form-object gewoon een method ("Sub") aan met een definitie die ongeveer het volgende doet: Code:
Private Sub Validate() Er bestaan betere manieren natuurlijk: je kan die tekstvakken in een array proberen steken (of aan het formulier vragen welke tekstvakken hij heeft) en die in een For (Each)-lus afgaan en op basis daarvan vragen om alles in te vullen. Ik zou je trouwens ook aanraden om die TextBox1 etc. te vervangen door goede namen: Name, Phone, Street, ... of eventueel NameField, ... Idem voor Button1 enzovoorts: noem die Submit bv. Op die manier krijg je toch wat meer overzicht in je code en moet je niet onthouden wat TextBox1 nu ook alweer was (was dat nu telefoonnummer, of schoenmaat van de gebruiker?) |
Alle tijden zijn GMT +1. Het is nu 00:30. |
Powered by vBulletin® Version 3.8.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.