Har en hel del textboxar mm i ett User Control. Jag vill känna av om en förändrig sker i någon textbox tex om man skriver i den. Kan använda TextChanged på alla textboxar men finns det en möjlighet att känna av detta på något enklare sätt? Vad är egentligen enklare än att använda sig av TextChanged? Alla kontroller som har samma signatur (samma parametrar) i sitt Change-event (vanligen "sender as object, e as EventArgs") kan kopplas till samma eventhanterare. Du behöver alltså inte göra en unik eventprocedur för varje textbox. Det går t ex att låta en comboboxs SelectedIndexChanged kopplas på samma procedur som en textboxs TextChanged om de ändå skall hanteras på samma sätt, t ex bara sätta en IsDirty (HasChanged)-flagga. Man kan också förlänga handles sektionen, se nedan som exempel.Känna av förändring i flera textboxar?
/JanneSv: Känna av förändring i flera textboxar?
Du kan ju koppla alla textboxar till samma funktion och kontrollera med sender, om det behövs, vilken textbox som ändrats...Sv: Känna av förändring i flera textboxar?
Exempel :
<code>
Private mHasChanged As Boolean=false
Private Sub Form_Load()
AddHandler TextBox1.TextChanged, AddressOf FormChanged
AddHandler TextBox2.TextChanged, AddressOf FormChanged
AddHandler TextBox3.TextChanged, AddressOf FormChanged
AddHandler ComboBox1.SelectedIndexChanged, AddressOf FormChanged
End Sub
...
Public Sub FormChanged(byval sender as Object, byval e as System.EventArg)
mHasChanged=true
End Sub
</code>Sv:Känna av förändring i flera textboxar?
<code>
Public Sub FormChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles TextBox1.TextChanged, TextBox2.TextChanged, TextBox3.TextChanged
End Sub
</code>