|
web
newsgroups
|
|||||||||||||||||||||||
|
|||||||||||||||||||||||
How to capture CheckChanged event from Radiobutton in Datagrid?I have a radio button that I have inserted into a datagrid via a
TemplateColumn. I need to know when the checked property of the radiobutton has changed so that I can do something. I have named a sub in the OnCheckChanged event so I really just need to know how to write the sub so that it knows which radiobutton it is that changed. Thanks in advance! Hi David,
You can identify the radiobutton from its ClientID. HTH Elton Wang elton_w***@hotmail.com >-----Original Message----- datagrid via a >I have a radio button that I have inserted into a >TemplateColumn. I need to know when the checked property of the radiobutton >has changed so that I can do something. I have named a sub in the >OnCheckChanged event so I really just need to know how to write the sub so Show quoteHide quote >that it knows which radiobutton it is that changed. > >Thanks in advance! > > >. > This code is for a checkbox, but you can easily adapt it for a RadioButton:
To capture the event for a control placed into a Template column of a DataGrid, you need to add the following code to your code-behind (this assumes the checkbox is named "chkDynamic"): Protected Sub chkDynamic_CheckedChanged(ByVal Sender As Object, ByVal e As System.EventArgs) 'This sub will be run for every row that has had its value changed Dim chk As CheckBox = CType(Sender, CheckBox) Dim item As DataGridItem = CType(chk.NamingContainer, DataGridItem) ' "item" is now a reference to the DataGrid selected row If chk.Checked Then item.BackColor = Color.Gray 'From here, you could grab some data from this row with: item.FindControl("ControlName") 'and then you would know which record was selected. End Sub Private Sub dg_ItemCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.DataGridItemEventArgs) Handles dg.ItemCreated 'This sub runs anytime the DataGrid needs to dynamically create a cotrol 'but we only are interested in rows that may have controls (not header, footer or pager rows) If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = ListItemType.AlternatingItem Then Dim chk As CheckBox = CType(e.Item.FindControl("chkDynamic"), CheckBox) AddHandler chk.CheckedChanged, AddressOf chkDynamic_CheckedChanged 'This adds a client-side JavaScript event handler. 'You must also have added a client-side JavaScript function called chkShow(sender) chk.Attributes.Add("onClick", "chkShow(this," & rowNum.ToString & ")") End If End Sub Show quoteHide quote "Elton Wang" <anonym***@discussions.microsoft.com> wrote in message news:609b01c5267e$125062c0$a501280a@phx.gbl... > Hi David, > > You can identify the radiobutton from its ClientID. > > HTH > > Elton Wang > elton_w***@hotmail.com > > >>-----Original Message----- >>I have a radio button that I have inserted into a > datagrid via a >>TemplateColumn. I need to know when the checked property > of the radiobutton >>has changed so that I can do something. I have named a > sub in the >>OnCheckChanged event so I really just need to know how to > write the sub so >>that it knows which radiobutton it is that changed. >> >>Thanks in advance! >> >> >>. >> Scott,
Thanks! this code came in very handy. Show quoteHide quote "Scott M." wrote: > This code is for a checkbox, but you can easily adapt it for a RadioButton: > > To capture the event for a control placed into a Template column of a > DataGrid, you need to add the following code to your code-behind (this > assumes the checkbox is named "chkDynamic"): > > Protected Sub chkDynamic_CheckedChanged(ByVal Sender As Object, ByVal e As > System.EventArgs) > 'This sub will be run for every row that has had its value changed > Dim chk As CheckBox = CType(Sender, CheckBox) > Dim item As DataGridItem = CType(chk.NamingContainer, DataGridItem) > ' "item" is now a reference to the DataGrid selected row > If chk.Checked Then item.BackColor = Color.Gray > 'From here, you could grab some data from this row with: > item.FindControl("ControlName") > 'and then you would know which record was selected. > End Sub > > Private Sub dg_ItemCreated(ByVal sender As Object, ByVal e As > System.Web.UI.WebControls.DataGridItemEventArgs) Handles dg.ItemCreated > 'This sub runs anytime the DataGrid needs to dynamically create a cotrol > 'but we only are interested in rows that may have controls (not header, > footer or pager rows) > If e.Item.ItemType = ListItemType.Item Or e.Item.ItemType = > ListItemType.AlternatingItem Then > Dim chk As CheckBox = CType(e.Item.FindControl("chkDynamic"), > CheckBox) > AddHandler chk.CheckedChanged, AddressOf chkDynamic_CheckedChanged > 'This adds a client-side JavaScript event handler. > 'You must also have added a client-side JavaScript function called > chkShow(sender) > chk.Attributes.Add("onClick", "chkShow(this," & rowNum.ToString & > ")") > End If > End Sub > > > > > "Elton Wang" <anonym***@discussions.microsoft.com> wrote in message > news:609b01c5267e$125062c0$a501280a@phx.gbl... > > Hi David, > > > > You can identify the radiobutton from its ClientID. > > > > HTH > > > > Elton Wang > > elton_w***@hotmail.com > > > > > >>-----Original Message----- > >>I have a radio button that I have inserted into a > > datagrid via a > >>TemplateColumn. I need to know when the checked property > > of the radiobutton > >>has changed so that I can do something. I have named a > > sub in the > >>OnCheckChanged event so I really just need to know how to > > write the sub so > >>that it knows which radiobutton it is that changed. > >> > >>Thanks in advance! > >> > >> > >>. > >> > > >
5th Re-Post with NO RESPONSE FROM MS!
Hyperlink Format Can't get a reference to user control in datagrid Problem with Top And Bottom Paging Sorting Datagrid With Hyphen / Dash How can I format a telephone # in the datagrid email validation radiobutton and datagrid DataGrid sort when Editing How to put the result of 2 DataReader in a DataList?? |
|||||||||||||||||||||||