Programmatically creating a datagrid control - Events NOT Firing!!!! Please Help

K

KJ

My Events are not firing. Viewstate is Enabled. My Datagrid's
datasource is being set after the Page Load. Is that a problem?

How can I make it work?





Protected Overrides Sub CreateChildControls()



bcI.HeaderText = "he"
bcI.DataField = "he"
bcN.HeaderText = "number"
bcN.DataField = "number"
bcP.HeaderText = "name"
bcP.DataField = "name"
bcU.HeaderText = "has"
bcU.DataField = "has"

tc.ItemTemplate = New DataGridTemplate(ListItemType.Item,
"Column1")
dgItems.Columns.AddAt(0, tc)
dgItems.Columns.AddAt(1, bcN)
dgItems.Columns.AddAt(2, bcI)
dgItems.Columns.AddAt(3, bcP)
dgItems.Columns.AddAt(4, bcU)
dgItems.Columns.AddAt(5, bcP)
dgItems.Columns.AddAt(6, bcCF)
dgItems.Columns.AddAt(7, bcCFC)
dgItems.EnableViewState = True
Controls.Add(dgItems)
AddHandler dgItems.ItemCommand, AddressOf dgItemClick

End Sub

Public Sub BindDataGrid()

dgItems.DataBind()

End Sub


Private Sub dgItems_DataBinding(ByVal sender As Object, ByVal e As
System.EventArgs) Handles dgItems.DataBinding
EnsureChildControls()
End Sub

End Class

Public Class DataGridTemplate
Implements ITemplate
Dim ib As New ImageButton()
Dim templateType As ListItemType
Dim columnName As String

Event Item_Click(ByVal source As Object, ByVal e As
System.Web.UI.ImageClickEventArgs)

Sub New(ByVal type As ListItemType, ByVal ColName As String)
templateType = type
columnName = ColName
End Sub

Sub InstantiateIn(ByVal container As Control) _
Implements ITemplate.InstantiateIn
Dim ib As New ImageButton()

ib.ImageUrl = "Select.gif"
ib.ToolTip = "Select Item"
ib.ImageAlign = ImageAlign.AbsBottom
ib.CommandName = "Select"

AddHandler ib.Click, AddressOf ItemClick
container.Controls.Add(ib)
End Sub
Public Sub ItemClick(ByVal sender As Object, _
ByVal e As
System.Web.UI.ImageClickEventArgs)

OnClick(e)
End Sub
Protected Overridable Sub OnClick(ByVal e As
System.Web.UI.ImageClickEventArgs)

RaiseEvent Item_Click(Me, e)
End Sub
End Class



----*****************************-----

Page Load
abc.BindDataGrid()

End Sub
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,756
Messages
2,569,535
Members
45,008
Latest member
obedient dusk

Latest Threads

Top