---
title: "lägga till onclick på knapp"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/60731-lägga-till-onclick-på-knapp"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "andreas_lindh"
published: "2002-11-30T11:23:33.000Z"
updated: "2002-12-02T11:16:36.000Z"
replies: 6
views: 273
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/dotnet/60731-lägga-till-onclick-på-knapp"
---

# lägga till onclick på knapp

## #1 — andreas_lindh, 2002-11-30T11:23Z

Försöker skapa en knapp och lägg till onclick på den

```
Dim b As Button = New Button()
                b.ID = "btSubmit"
                b.Text ="Lägg till"
                b.Click+=New system.eventhandler(insert)
                lblSubmit.Controls.Add(b)
```

Men jag får ett felmeddelande

```
Compiler Error Message: BC32022: 'Public Event Click(sender As Object, e As System.EventArgs)' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event.

Source Error:

 

Line 59:                 b.ID = "btSubmit"
Line 60:                 b.Text ="Lägg till"
Line 61:                 b.Click+=New system.eventhandler(insert)
Line 62:                 lblSubmit.Controls.Add(b)
Line 63: 	end sub
 

Source File: h:\inetpub\wwwroot\cup\addspelare.aspx    Line: 61
```

Permalänk: https://www.webforum.nu/p/60731

## #2 — icaaq, 2002-11-30T11:56Z

```
[red]
Dim b As Button = New Button()
b.ID = "btSubmit"
b.Text ="Lägg till"
AddHandler b.Command, AddressOf insert
lblSubmit.Controls.Add(b)[/red]
```

Jag tror det är så man gör :OO

Men hur gör man i C#?

mvh icaaq

Permalänk: https://www.webforum.nu/p/870194

## #3 — andreas_lindh, 2002-11-30T12:11Z

Testade din kod men får ett nytt felmeddelande

```
Compiler Error Message: BC30408: Method 'Public Sub insert(obj As Object, e As System.EventArgs)' does not have the same signature as delegate 'Delegate Sub CommandEventHandler(sender As Object, e As System.Web.UI.WebControls.CommandEventArgs)'.

Source Error:

 

Line 59:                 b.ID = "btSubmit"
Line 60:                 b.Text ="Lägg till"
Line 61:                 AddHandler b.command, AddressOf insert
Line 62:                 lblSubmit.Controls.Add(b)
Line 63: 	end sub
 

Source File: h:\inetpub\wwwroot\cup\addspelare.aspx    Line: 61
```

Permalänk: https://www.webforum.nu/p/870200

## #4 — icaaq, 2002-11-30T12:17Z

Byt ut 

```
[red]
Public Sub insert(obj As Object, e As System.EventArgs)
[/red]
```

mot 

```
[red]
Public Sub insert(sender As Object, e As System.Web.UI.WebControls.CommandEventArgs)
[/red]
```

Chansar ;)

mvh icaaq

Permalänk: https://www.webforum.nu/p/870205

## #5 — andreas_lindh, 2002-11-30T12:26Z

Nu blir det inga felmeddelanden men den kör inte insert heller

Permalänk: https://www.webforum.nu/p/870208

## #6 — icaaq, 2002-11-30T13:15Z

Här har du en artikel som tar upp ämnet

<http://aspalliance.com/articles/dynamicbuttons.aspx>

mvh icaaq

Permalänk: https://www.webforum.nu/p/870237

## #7 — andreas_lindh, 2002-12-02T11:16Z

Problemet är att jag inte skapar textboxarna i page_load utan när användaren klickar på en länk

visar lite kod

```
sub page_load(obj as object, e as eventargs)
		
		dim c_id as integer = 35
		Dim strSQL1 as String= String.Format("select * from deltagande_lag where cup_id={0}", c_id)	
		'response.write(strsql &"<br />")
		dim objcmd as new oledbdataadapter(strsql1, objconn)
		
		dim ds as dataset =new dataset()
		objcmd.fill(ds, "deltagande_lag")
		
		datagrid1.datasource =ds.tables("deltagande_lag"). _
		defaultview
		databind()
		
		label2.text = "Välj i vilket lag du vill skriva in spelare"
	end sub
	
	sub valjlag(obj as object, e as datagridcommandeventargs)
		dim l_id as integer = datagrid1.DataKeys(CInt(e.Item.itemindex))
		Dim strSQL as String= String.Format("select * from deltagande_lag where id={0}", l_id)	
		'response.write(strsql &"<br />")
		dim objcmd1 as new oledbcommand(strsql, objconn)
		dim dr as OleDbdatareader
		objconn.open
		dr =objcmd1.executereader
			dim antalspelare as integer
			dim lag_id as integer
			if dr.read then
				antalspelare= dr("antal_spelare")
				'lag_id= dr("lag_id")
			end if
			Dim numtexts as Integer = antalspelare
			Dim i as Integer
			lblHeader.text ="Namn"
			lblHeader1.text = "Nummer"
			For i = 1 To numtexts
                Dim tbnamn As TextBox = New TextBox()
                tbnamn.ID = "namn" & i
                lblNamn.Controls.Add(tbnamn)
                lblNamn.Controls.Add(new LiteralControl("<br />"))
                Dim tbnummer As TextBox = New TextBox()
                tbnummer.ID = "Nummer" & i
                lblNummer.Controls.Add(tbnummer)
                lblNummer.Controls.Add(new LiteralControl("&nbsp;<br />"))
            Next
            Dim b As Button = New Button()
                b.ID = "btSubmit"
                b.Text ="Lägg till"
                b.CommandName = "insert_spelare"
                AddHandler b.command, AddressOf insert_spelare
                lblSubmit.Controls.Add(b)
	end sub
	
	public Sub insert_spelare(sender As Object, e As CommandEventArgs)
		dim b As LinkButton = CType(Sender, LinkButton)
		dim insert_spelare as String = b.CommandArgument
		lblmessage.text = "test"
	end sub
```

Och länken för att skapa textboxarna

```
<asp:datagrid id="datagrid1"
				runat="server" autogeneratecolumns="False"
				borderwidth="0" borderstyle="None"
				cellspacing="4" showfooter="false"
				showheader="false" gridlines="None" onitemcommand="valjlag" datakeyfield="id">
					<columns>
						<asp:boundcolumn datafield="namn" />
						<asp:boundcolumn datafield="id" />
						<asp:buttoncolumn buttontype="LinkButton" text="välj" commandname="valjlag" />
					</columns>
				</asp:datagrid>
```

Permalänk: https://www.webforum.nu/p/871478

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/60731-lägga-till-onclick-på-knapp
