Saturday, September 4, 2010

Select GridView Row without using Select button

This code snippet Illustrate How to Select GridView Row without using Select Command button.
I think code can do better idea than description. check the snippet.

protected void Button1_Click(object sender, EventArgs e)
        //identifying button
        Button gridBtn = (Button)sender;
       //selecting grid row
        GridViewRow gridRow = (GridViewRow)gridBtn.NamingContainer;
       //setting Index
        int selectedIndex = gridRow.DataItemIndex;
       // Setting Selected Index of GridView1
         GridView1.SelectedIndex = selectedIndex;
        //firing selected Index changed if you need
        //here I used to change color of selected rows
         GridView1_SelectedIndexChanged(GridView1, EventArgs.Empty);
        if (gridBtn != null)
           //changing button text[/color]
            if (gridBtn.Text == "DeSelect")
            { gridBtn.Text = "Select"; }
            { gridBtn.Text = "DeSelect"; }

    protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
        int sIndex = GridView1.SelectedIndex;
        if (GridView1.Rows[sIndex].BackColor == System.Drawing.Color.Red)
            GridView1.Rows[sIndex].BackColor = System.Drawing.Color.White;
            GridView1.Rows[sIndex].BackColor = System.Drawing.Color.Red;


ASPX section

I add One Button field as Template field. and add Button text as "Select". when you click on select button in GridView, the selected Row become Red color.

<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
                <asp:BoundField DataField="Name" HeaderText="Name" SortExpression="Name" />
                <asp:BoundField DataField="Category" HeaderText="Category"
                    SortExpression="Category" />
                <asp:BoundField DataField="Tags" HeaderText="Tags" SortExpression="Tags" />
                        <asp:Button ID="Button1" runat="server" Text="Select" onclick="Button1_Click" />

Preview of Output
You can Select or Deselect GridView Rows.

Thank you for Reading this code snippet.
Feel Free to comment. if you have any doubts let me know.

1 comment:

Anonymous said...