---
title: "OnItemDataBound, OnItemCreate, DataGrid"
type: "forum-thread"
url: "https://www.webforum.nu/amne/dotnet/116753-onitemdatabound-onitemcreate-datagrid"
topic: ".NET"
topic_url: "https://www.webforum.nu/amne/dotnet"
author: "maqe"
published: "2004-11-26T16:03:08.000Z"
updated: "2004-11-28T19:58:25.000Z"
replies: 5
views: 451
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/116753-onitemdatabound-onitemcreate-datagrid"
---

# OnItemDataBound, OnItemCreate, DataGrid

## #1 — maqe, 2004-11-26T16:03Z

Jag har en ImageButton och när man klickar på den vill jag skicka upp ett javascript "confirm" och det har jag tänkt göra såhär.

> private void FileList_itemCreated(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
> 		{
> 			if (e.Item.ItemType == ListItemType.Item)
> 			{
> 				ImageButton delete = (ImageButton)e.Item.FindControl("btnDelete");
> 				delete.Attributes.Add("onclick","return confirm('Delete node?');");
> 			}
> 		}

Eftersom jag använder mig av tapstrip kontrollen från microsoft så kommer jag inte åt datagridens event och får då lägga till eventen manuellt. Och det blir något i den här stilen tror jag

> this.FileList.ItemCreated += new System.Web.UI.WebControls.DataGridItemEventHandler(this.itemCreated);

sedan lägger jag till OnItemCreated="itemCreated" i min datagrid men jag får endå felet: ASP.MainContent_ascx innehåller inte en definition för itemCreated

Något jag missat?

Sedan passar jag på att fråga en sak om att lägga till event manuellt ... dom raderas automatiskt av VS.NET har jag märkt ... lägger till event för en knapp manuellt i koden sedan om jag lägger till ett event genom propertiesboxen för kontrollen så försvinner dom eventen jag lagt till manuellt och det är mycket irriterande. Någon som vet hur man kan göra för att komma åt t.ex. en datagrids event om man inte kan se den i designläge?

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

## #2 — Nöff, 2004-11-27T15:48Z

kan du inte loopa igenom alla datagriditems efter att du databound:at den?, och sätta .Attributes.Add() på varje knapp?.

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

## #3 — Stefan Holmberg, 2004-11-27T22:05Z

Prova med att deklarera FileList_itemCreated som public.

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

## #4 — maqe, 2004-11-28T10:15Z

> **Stefan Holmberg skrev:**
>
> Prova med att deklarera FileList_itemCreated som public.

Nope det fungerade inge vidare tyvärr ... får samma fel ...

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

## #5 — Nöff, 2004-11-28T11:12Z

// Efter DataBound

```
for(int x=0;x<DataGrid.Items.Count;x++)
	{
		if(DataGrid.Items[x].ItemType==ListItemType.Item||DataGrid.Items[x].ItemType==ListItemType.AlternatingItem)
	{
					DataGrid.Items[x].Cells[3].Attributes.Add("onClick", "javascript:return confirm('Sure?')");
	}
}
```

Detta funkar alldeles utmärkt

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

## #6 — Stefan Holmberg, 2004-11-28T19:58Z

> **Stefan Holmberg skrev:**
>
> Prova med att deklarera FileList_itemCreated som public.

och använd samma namn i din grid

OnItemCreated="FileList_itemCreated"

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

---

Tråden på webben: https://www.webforum.nu/amne/dotnet/116753-onitemdatabound-onitemcreate-datagrid
