talker2004
asked on
loop through checkbox's in a datagridview on an asp.net applicaiton c# or vb.net
OK, i have two issues
1. For some reason my checkbox is not appearing in the grid.
2. Once the checkbox appears how do i loop through all itmes in teh grid and check the status of the checkbox.
The datasource does not have a Boolean field bound to the grid.
1. For some reason my checkbox is not appearing in the grid.
2. Once the checkbox appears how do i loop through all itmes in teh grid and check the status of the checkbox.
The datasource does not have a Boolean field bound to the grid.
Dim sql As String = _
"Select LastName, FirstName, EmailAddress FROM RegisteredUsers"
cmdSQL.CommandText = sql
Dim dsRegisteredUsers As DataSet = objData.QueryDataset(cmdSQL, "RegisteredUsers")
'Query dataset is a function that gets my dataset based off the query
Me.GridView1.DataSource = dsRegisteredUsers
Me.GridView1.DataMember = "RegisteredUsers"
Me.GridView1.DataBind()
'' Here is my markup
<asp:GridView
ID="GridView1" runat="server"
BackColor="#99FF99" BorderColor="#000066">
<Columns>
<asp:CheckBoxField HeaderText="Select" />
<asp:BoundField DataField="LastName" HeaderText="Last Name"
SortExpression="LastName" >
<ItemStyle Width="120px" />
</asp:BoundField>
<asp:BoundField DataField="FirstName" HeaderText="First Name"
SortExpression="FirstName" >
<ItemStyle Width="120px" />
</asp:BoundField>
<asp:BoundField DataField="EmailAddress" HeaderText="Email Address"
SortExpression="EmailAddress" >
<ItemStyle Width="200px" />
</asp:BoundField>
</Columns>
<HeaderStyle BackColor="#3399FF" />
<AlternatingRowStyle BackColor="#FFFF99" />
</asp:GridView>
Have you tried to use the ItemDataBound Event of the gridview?
and try this for the checkbox
<ItemTemplate>
<asp:CheckBox ID="chk" runat="server" />
</ItemTemplate>
<ItemTemplate>
<asp:CheckBox ID="chk" runat="server" />
</ItemTemplate>
oops should be all this
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="chk" runat="server" />
</ItemTemplate>
</asp:TemplateField>
and for the loop
For Each gvr As GridViewRow In GridView1.Rows
Next
For Each gvr As GridViewRow In GridView1.Rows
Next
You don't have to use the Loop if you use the ItemDataBound Event. The code in the ItemDataBound Event gets executed for each row of the grid.
The loop would be useful outside of the ItemDataBound Event. I just wanted to clear that up.
The loop would be useful outside of the ItemDataBound Event. I just wanted to clear that up.
3abqari:
probably should have mentioned that the loop would just be used for processing only after the ItemDataBound Event.
probably should have mentioned that the loop would just be used for processing only after the ItemDataBound Event.
ASKER
i am real close, got the loop like you said
but i am not able to read the value of ?gvr.Cells(0)
how can you tell if the checkbox is checked?
Try using the gvr.FindControl("chk")
or ctype(gvr.FindControl("chk "), checkbox).checked
ASKER
sweet it looks good i am going to try it when i get home.
Is it just me or is ee having some issues with speed today?
Is it just me or is ee having some issues with speed today?
I'm using the Expert skin, which eliminates all the advertisement that are in the Premium skin... It's fine here.
ASKER
is there any reason it would be coming up false when it's checked
and after the post backs all of my checks clear
and after the post backs all of my checks clear
tell me exactly what you are trying to do with this grid so that I can maybe answer you?
ASKER
duh, i was binding the grid in the page load event and i did not have an IsPostBack condition.
it's working now, thanks so much.....
it's working now, thanks so much.....
ASKER CERTIFIED SOLUTION
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.