Hallo zusammen, zur Laufzeit generierte UserControls entfernen hörst sich ja nicht so schwer an eigentlich. Ist es aber doch... Zumindest habe ich momentan keine Idee. Die Ausgangssituation:
In einer TabPage ist ein Usercontroll mit mehreren TextBoxen wenn der Such-Butten geklickt wird dann werden die Eingegeben Daten an eine DB gesendet.
Jetzt erstelle ich nach dem die DB geantwortet hat für jeden Datensatz eine neune Instanz des Usercontrols und befülle das mit den Daten Das Funktioniert auch soweit ganz gut und bekomme auch alles Angezeigt. Hier mal der Code:
Jetzt Dachte ich mir das mit Remove alles wieder Verschwindet aber das tut es nicht. Hat jemand eine Lösung/Idee wie ich die "Suchergebnisse" wieder löschen kann? Hatte es schon so Probiert leider ohne erfolg.
In einer TabPage ist ein Usercontroll mit mehreren TextBoxen wenn der Such-Butten geklickt wird dann werden die Eingegeben Daten an eine DB gesendet.
Jetzt erstelle ich nach dem die DB geantwortet hat für jeden Datensatz eine neune Instanz des Usercontrols und befülle das mit den Daten Das Funktioniert auch soweit ganz gut und bekomme auch alles Angezeigt. Hier mal der Code:
Code:
Public Sub Button_person_search_Clicked(sender As System.Object, e As System.EventArgs) Handles Button_person_search.Click DBResult = dbcom.searchUser(.......) Dim UserControlArray(0) As person ' Person ist das Usercontroll ReDim Array(UBound(DBResult, 1) - 1) ' größe Anpassen For i As Integer = 0 To (UBound(DBResult, 1) - 1) If Not IsNothing(DBResult(i, 0)) Then UserControlArray(i) = New person If i > 0 Then 'positionieren des Ergebnisse UserControlArray(i).Location = New Point(10, (UserControlArray(i - 1).Location.Y + UserControlArray(i).Size.Height) + 10) Else UserControlArray(i).Location = New Point(10, newperson.Location.Y + UserControlArray(i).Size.Height + 10) End If 'befüllen mit Daten UserControlArray(i).TB_Name.Text = DBResult(i, 1) Next End Sub
Code:
For Each o In TabPage_Person.Controls() If TypeOf o Is person Then If Not first Then 'Behalte das erste UserControl TabPage_Person.Controls.Remove(o) Else first = False End If End If Next
Comment