1 messaggio dal 19 maggio 2020
Salve,
sto sviluppando un'applicazione web in vb.net e webforms ed è da giorni che non riesco ad uscire fuori da una strana situazione.
Ho una tabella di dati (relativi a computer) costruita a runtime dove, nell'ultima colonna, inserisco un bottone che sarà utilizzato per segnalare se, la macchina indicata nella riga, è guasta.
Sto parlando di una pagina web incorporata in una master page.

qui di seguito riporto uno stralcio della sub BindData() richiamata all'interno del page load:

        For Each test As TestResult In Tests
            ...
            Dim SetDamagedBtn As New Button With {
                .ID = "Btn_" & test.DE_WKS_NEW,
                .Text = "KO",
                .CssClass = "ui-button"
            }
            AddHandler SetDamagedBtn.Click, AddressOf SetDamaged_Click
            Dim c As New TableCell
            c.Controls.Add(SetDamagedBtn)
            row.Cells.Add(c)
            SummaryTable.Controls.Add(row)
    Next


Come è possibile vedere, ad ogni riga nel foreach, nell'ultima colonna, creo un bottone e gli assegno all'evento click tramite la AddHandler la sub SetDamaged_Click.
Questa sub però, al click di uno dei bottoni creati, non viene mai richiamata. Di seguito riporto il codice della sub:

    Protected Sub SetDamaged_Click(sender As Object, e As EventArgs)
        Dim btn As Button = DirectCast(sender, Button)
        PlaceWarning.Visible = True
        BindData()
    End Sub


Sbaglio qualcosa? Ci sono limitazioni sull'assegnazione a runtime di un evento?
Aggiungo inoltre che, non ho utilizzato una GridView o una ListView per il display dei dati poichè, l'header della tabella è dinamico, ovvero, il numero di colonne potrebbe variare a runtime in questo modo:

NomeWks, [Test0, ..., TestN], Segnala guasto
Computer1,[OK0/KO0, ..., OkN/KoN], SetDamagedBtn_NomeWks
354 messaggi dal 13 novembre 2009
Ciao manca autopostback a true

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.