Ich erstelle ein Textfeld und Schaltfläche dynamisch wie dies in einem Flowlayoutpanel:Pass Variable in dynamisch erstellte Schaltfläche Click-Ereignishandler
Dim txtRating As New TextBox
txtRating.Name = "buildingRating_" + intCount.ToString
Dim btnAddRating As New Button
btnAddRating.Name = "addRating_" + intCount.ToString
Und dann erstelle ich einen Event-Handler für die Schaltfläche:
AddHandler btnAddRating.Click, AddressOf HandleAddRatingButtonClick
Jedes Textfeld und jede Schaltfläche werden mit dem intCount-Wert verknüpft, sodass es wie folgt aussieht:
buildingRating_1 addRating_1
buildingRating_2 addRating_2
buildingRating_3 addRating_3
etc....
Ich muss den Wert der Textbox abrufen, die der Schaltfläche zugeordnet ist.
Zum Beispiel, wenn der Benutzer die Schaltfläche addRating_1 namens klickt, wird der Textwert von buildingRating_1 einer Datenbank gespeichert werden ...
Gibt es eine Möglichkeit, dass die Assoziation zu erhalten oder intCount in das btnAddRating.Click Ereignis passieren das ich erschaffe?
Danke!
NET Benutzerereignisse festgelegt sind, so dass Sie alles, um es passieren kann nicht. Sie können das zugehörige Textsteuerelement entweder finden, indem Sie a) in die angrenzende Spalte schauen, b) den Absendernamen analysieren, um den Textsteuerungsnamen zu erstellen (außer 'addRating_4' c) ein Benutzersteuerelement erstellen, das beides enthält und * einkapselt * die duale Natur c) Erstellen Sie eine Lookup-Liste, um einmal von der anderen zu bekommen – Plutonix
Warum nicht ein Lambda für den Handler verwenden? –
@djv Tippfehler (fest) – SkyeBoniwell