Zum Inhalt springen

VB.NET Click-Event eines Buttons zur Laufzeit festlegen


jasso

Empfohlene Beiträge

hallo leute,

ich habe wie im titel schon erwähnt eine VB.NET-Anwendung (wird ein Web-Part für ein Sharepoint System.). in Dieser Anwendung erstelle ich einen Button mit

Dim btnBerechne As New Button()
außerdem habe ich noch eine Funktion
Sub btnBerechne_Click(ByVal sender As Object, ByVal e As System.EventArgs)

...

End Sub
wie bringe ich jetzt dem Button bei dass beim Klick diese Funktion aufgerufen wird? ich finde leider keine Eigenschaft "Click" oder "onClick" oder auch nur "Events" bei dem Steuerelement. Allerdings habe ich ein C# Beispiel in dem es mit
btnBerechne.Click += new EventHandlerbtnBerechne_Click);

gemacht wird:confused:

danke

lg

jasso

Link zu diesem Kommentar
Auf anderen Seiten teilen

hi, ich hab sowas bisher nur in Vb .Net mit einem menü gemacht, was zu laufzeit aufgefüllt wird... dort geht das so:


 objMenuItemVisual.Text = "Test"

 AddHandler objMenuItemVisual.Click, AddressOf mniLoadClick

 mniVisualLoad.MenuItems.Add(objMenuItemVisual)

und aufgerufen wird das ganze durch klicken im menü:

 Private Sub mniLoadClick(ByVal sender As Object, ByVal e As System.EventArgs)

        Dim FavName As MenuItem = CType(sender, MenuItem)

        ......

        FavName = Nothing

    End Sub

Link zu diesem Kommentar
Auf anderen Seiten teilen

momentan so:

Imports System

Imports System.Data.SqlClient

Imports System.ComponentModel

Imports System.Web.UI

Imports System.Web.UI.WebControls

Imports Microsoft.SharePoint

Imports System.Xml.Serialization

Imports Microsoft.SharePoint.Utilities

Imports Microsoft.SharePoint.WebPartPages

Imports Microsoft.SharePoint.WebControls

Imports Microsoft.Win32

Imports System.Web.UI.HtmlControls


<XmlRoot(Namespace:="JETest")> _

Public Class jeckerltest

    Inherits WebPart


    Dim lblProdukt As New Label()

    Dim WithEvents btnBerechne As New Button


    Protected Overrides Sub CreateChildControls()

        MyBase.CreateChildControls()

        lblProdukt.Font.Bold = True

        lblProdukt.ForeColor = System.Drawing.Color.YellowGreen

        lblProdukt.Text = "vorher"

        btnBerechne.Text = "Berechnen"

        AddHandler btnBerechne.Click, AddressOf btnBerechne_Click

    End Sub


    Public Sub btnBerechne_Click(ByVal sender As Object, ByVal e As System.EventArgs)

        lblProdukt.ForeColor = System.Drawing.Color.Green

        lblProdukt.Text = "juhu"

    End Sub


    Protected Overrides Sub RenderWebPart(ByVal output As System.Web.UI.HtmlTextWriter)

        Try

            btnBerechne.RenderControl(output)

            lblProdukt.RenderControl(output)

        Catch err As SystemException

            output.Write(err.ToString)

        End Try

    End Sub

End Class
aber ich hatte auch schon diesen
    Public Sub btnBerechne_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btnBerechne.Click
methoden-kopf und halt dann das
AddHandler btnBerechne.Click, AddressOf btnBerechne_Click

weggelassen.

lg

jasso

Link zu diesem Kommentar
Auf anderen Seiten teilen

probiers mal so:


Protected Overrides Sub CreateChildControls()

        MyBase.CreateChildControls()

        lblProdukt.Font.Bold = True

        lblProdukt.ForeColor = System.Drawing.Color.YellowGreen

        lblProdukt.Text = "vorher"

        btnBerechne.Text = "Berechnen"

        AddHandler btnBerechne.Click, AddressOf Me.btnBerechne_Click

        Me.Controls.Add(btnBerechne)

        ChildControlsCreated = True

    End Sub

Link zu diesem Kommentar
Auf anderen Seiten teilen

JETZT geht es! zutätzlich zu deinem code hab ich das ganze noch an das init-ereignis hängen müssen. dann hat es funktioniert. also jetzt so:

    Private Sub WebPartTest_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init

        btnBerechne.ID = "button1"

        AddHandler btnBerechne.Click, AddressOf btnBerechne_Click

        Me.Controls.Add(btnBerechne)

        ChildControlsCreated = True

    End Sub

danke auf jeden fall!

lg

jasso

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...