Mukarram Mukhtar

Bulk Edit GridView in .NET

 

How to create a Bulk Edit GridView in .NET:

In this article I’ll explain how to create a bulk edit grid view in .NET and how to perform all the CURD (Create, Update, Read, and Delete) operations on it. The current grid view which ASP.NET has does not have the functionality to open the whole grid view in Edit mode. Although you can set grid view’s display mode to Edit or View; however, doing so will open only one row in edit mode at a time. But if you want our gridview to have an ability to open all the rows in edit we need to make a custom control as follows.

 

Creation of Bulk Edit GridView:

The main logic behind this gird is; we want the whole functionality of current gird view + the ability to open all the rows in edit mode. This sounds like an inheritance, i.e., our custom grid control is a perfect candidate of being a child of GridView control of .NET. So we’ll create a custom control and extend it from GridView class and then add some more power to it so that it can achieve our desired capabilities.

 

·        Start Microsoft Visual Studio 2003 or later.

·        Click Create New Project

·        In New Project dialog box, select Visual C# in Project types panel on left.

·        Select ASP.NET Web Application in the Templates panel on right.

·        Give a decent physical path and name to your project and select OK.

 

 

By doing this, IDE will create a web application project with a default form added into it.

 

·        Rename your Form1.cs to SampleGridView.aspx.

·        Add a Web Custom Control by right clicking project root node in Solution Explorer; name the class file to SMARTGridView.cs.

 

After completing the above steps your Solution Explorer should look something like this:

 

 

Now let’s start coding with the most important piece of our demo today i.e. SMARTGridView.cs; first comes namespaces, pretty standard, added by IDE:

 

 

 

using System;

using System.Collections.Generic;

using System.ComponentModel;

using System.Text;

using System.Web;

using System.Web.UI;

using System.Web.UI.WebControls;

 

 

 

 

 

And then comes the rest of the control code:

 

 

namespace SMARTControls

{

01  [DefaultProperty(“Text”)]

02  [ToolboxData(“<{0}:SMARTGridView runat=server></{0}:SMARTGridView>”)]

03  public class SMARTGridView : System.Web.UI.WebControls.GridView

    {       

        [Bindable(true)]

        [Category(“Appearance”)]

        [DefaultValue(“”)]

        [Localizable(true)]

        public string Text

        {

            get

            {

04              String s = (String)ViewState[“Text”];

05              return ((s == null) ? String.Empty : s);

            }

 

            set

            {

06              ViewState[“Text”] = value;

            }

        }

 

        /// <summary>

        /// Default Constructor

        /// </summary>

        public SMARTGridView()

        {

07          if(this.ViewState[“DisplayMode”] == null) this.ViewState[“DisplayMode”] = 0;

        }

 

        /// <summary>

        /// Emulates the creation of the row to set all rows as parent.

        /// </summary>

        /// <param name=”rowIndex”></param>

        /// <param name=”dataSourceIndex”></param>

        /// <param name=”rowType”></param>

        /// <param name=”rowState”></param>

        /// <returns></returns>

08      protected override GridViewRow CreateRow(int rowIndex, int dataSourceIndex, DataControlRowType rowType, DataControlRowState rowState)

        {

09          int displayMode = 0;

10          if (this.ViewState[“DisplayMode”] != null)

                int.TryParse(this.ViewState[“DisplayMode”].ToString(), out displayMode);

 

11          return base.CreateRow(rowIndex, dataSourceIndex, rowType, (displayMode == 1 ? DataControlRowState.Edit : rowState));

        }

 

12      public int DisplayMode

        {

13          get { return (int)this.ViewState[“DisplayMode”]; }

14          set { this.ViewState[“DisplayMode”] = value; }

        }

    }

}

 

 

 

 

 

 

 

Line 01 sets the default property of the grid to Text property. This property is called when you execute statement like mySmartGridView.ToString(). Line 02 tells what would be the name of the control, if added in IDE’s toolbox. At the end of this article I’ll show you, how we can add this custom control in Visual Studio’s toolbox. Line 03 tells that our class name is SMARTGridView and it is a child class of System.Web.UI.WebControls.GridView. What this translates to is, SMARTGridView as inherited all the normal functionality of a grid view. Now rest of the coding in this class is for giving SMART Grid an ability to open all rows in edit mode or simply, bulk edit. Lines 4, 5 and 6 are for getting/setting the default Text property of the grid. We have another public property in this class i.e. DisplayMode; lines 12, 13 and 14. This property, stored in view state, tells us the display mode of the grid at any time. Display mode can be view mode (integer value 0) or edit mode (integer value 1), latter is our bulk edit mode and former is normal view mode of parent GridView class. Now since we’ve given this property as a public property, it can be set at design time as well as a run time by C# code. Line 07 sets the mode property to default 0, i.e. view mode. In line 08, we are over riding CreateRow method of parent GridView class. This method calls its parent’s CreateRow method (Line 11) in a normal way, however, for each row it creates, it sends the display mode as the one stored in view state and which is set either at design time or at run time by C# code, thus enabling us to set Display mode of each an every row grid creates. That’s it; our bulk edit grid is all set to go live on a web page. Now let’s just quickly write a sample web page that will demonstrate the power and functionality of our newly born grid.

 

Let’s start with HTML code of the page:

 

 

01   <%@ Page Language=”C#” AutoEventWireup=”true” CodeBehind=”SampleGridView.aspx.cs” Inherits=”SMARTControls.SampleGridView” %>

 

02   <%@ Register Assembly=”SMARTControls” Namespace=”SMARTControls” TagPrefix=”wisdomControls” %>

 

<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”&gt;

 

<html xmlns=”http://www.w3.org/1999/xhtml&#8221; >

<head runat=”server”>

    <title>Sample grid view page</title>

    <link href=”GlobalSample.css” rel=”stylesheet”  type=”text/css”/>

</head>

<body>

    <form id=”form1″ runat=”server”>

    <div style=”width:100%”>

03           <asp:Button ID=”btnView” runat=”server” Text=”View” OnClick=”btnView_Click” />

        <asp:Button ID=”btnEdit” runat=”server” Text=”Edit” OnClick=”btnEdit_Click” />

        <asp:Button ID=”btnAdd” runat=”server” Text=”Add” OnClick=”btnAdd_Click” />

        <asp:Button ID=”btnSave” runat=”server” OnClick=”btnSave_Click” Text=”Save” /><br />

04           <wisdomControls:SMARTGridView ID=”SMARTGridView1″ EnableViewState=”True” Width=”50%” AutoGenerateColumns=”false” runat=”server” OnRowCreated=”SMARTGridView1_RowCreated”>            

           <FooterStyle CssClass=”GridFooterStyle” />

           <RowStyle CssClass=”GridRowStyle” />

           <EditRowStyle CssClass=”GridEditRowStyle”  />

           <SelectedRowStyle CssClass=”GridSelectedRowStyle” />

           <PagerStyle CssClass=”GridPagerStyle” HorizontalAlign=”Right” />

           <HeaderStyle CssClass=”GridHeaderStyle”  Wrap=”False”/>

           <AlternatingRowStyle CssClass=”GridAlternatingRowStyle”/>

            <Columns>

                <asp:TemplateField HeaderText=”ID”>

                    <ItemTemplate>

05                           <asp:Label Width=”95%” ID=”lblGridID” runat=”server” Text=”<%# Bind(‘ID’) %>“></asp:Label>               

                    </ItemTemplate>

                    <EditItemTemplate>

06                           <asp:TextBox Width=”50%” ID=”txtGridID” Text=”<%# Bind(‘ID’) %> runat=”server”></asp:TextBox>              

                    </EditItemTemplate>

                </asp:TemplateField>

               

                <asp:TemplateField HeaderText=”Name”>

                    <ItemTemplate>

                        <asp:Label Width=”95%” ID=”lblGridText” runat=”server” Text=”<%# Bind(‘Name’) %>“></asp:Label>               

                    </ItemTemplate>

                    <EditItemTemplate>

                        <asp:TextBox Width=”50%” ID=”txtGridText” Text=”<%# Bind(‘Name’) %> runat=”server”></asp:TextBox>              

                    </EditItemTemplate>

                </asp:TemplateField> 

            </Columns>             

        </wisdomControls:SMARTGridView><br />

    </div>

    </form>

</body>

</html>

 

 

 

 

 

 

Line 01 tells us page’s name and its code behind cs file’s name. Line 02 registers the custom control SMARTGridView. This is exactly the same way you normally register any user control to your page. In line marked as 03 and in next few lines I have added 4 buttons for View, Edit, Add and Save operations respectively. Line 04 starts grid’s structure. In line 05 and 06 I’ve added a label control and a textbox control in View and Edit item templates respectively. Similarly, in next lines I’ve added one more column, two item templates for both the columns. After finishing our HTML of the web page, let’s see the cs part of it. Before I show you the code written in cs file, I would spend a few lines to briefly explain the logic behind this web page.

 

I’ve created a small class of Person. This class contains only 2 private data members and their corresponding public properties, followed by 2 overloaded constructors. That’s how the class looks like, and I’ve written the class in SampleGridView.aspx.cs itself:

 

 

 

    [Serializable]

    public class Person

    {

        private int id;

        private string name;

 

        public int ID

        {

            get { return id; }

            set { id = value; }

        }

        public string Name

        {

            get { return name; }

            set { name = value; }

        }

 

        public Person()

        {

 

        }

        public Person(int id, string name)

        {

            this.id = id;

            this.name = name;

        }

    }

 

 

 

 

 

Now what I’m going to do is:

 

·        Create a generic list of Person class.

·        Hard code some Person’s IDs and Names and fill up that list.

·        Store that list in ViewState of the page.

·        Set SMARTGridView1.DataSource to list of persons.

·        Behind Edit and Add buttons, set Display Mode of the grid to 1; and set 0 behind View button.

·        Whenever a change is saved in the grid by clicking Save button, save it in ViewState as well.

 

Following are the standard namespaces used in the cs file.

 

 

 

using System;

using System.Data;

using System.Configuration;

using System.Collections;

using System.Collections.Generic;

using System.Web;

using System.Web.Security;

using System.Web.UI;

using System.Web.UI.WebControls;

using System.Web.UI.WebControls.WebParts;

using System.Web.UI.HtmlControls;

 

 

 

 

 

Here comes the rest of the form, form_Load event is the first to be discussed:

 

 

 

protected void Page_Load(object sender, EventArgs e)

        {

            if (!Page.IsPostBack)

            {

// proceeding to step 1, i.e. create a list of person and fill it up with hard coded

// persons

                this.ViewState[“PersonList”] = this.GetPersonList();

                ShowData();

            }

        }

 

 

 

 

 

In this method I’m calling GetPersonList() method which will create a list of persons, hard code some person in it and then save it in the view state. The same list of person will be displayed in our SMARTGridView in the method ShowData(). In real life application, GetPersonList() method will get list of persons from database instead of getting hard coded person. So let’s see our GetPersonList():

   

/// <summary>

  /// Instead of hard coding Persons’ names you can get persons or any other  

  /// business objects from Database

        /// </summary>

        /// <returns></returns>

        private List<Person> GetPersonList()

        {

            List<Person> lstPerson = new List<Person>();

            lstPerson.Add(new Person(1, “Roger”));

            lstPerson.Add(new Person(2, “Adam”));

            lstPerson.Add(new Person(3, “Allmand”));

            lstPerson.Add(new Person(4, “Chris”));

            lstPerson.Add(new Person(5, “John”));

 

            return lstPerson;

        }

 

Quite simple and straight forward, no explanation needed for this method. Let’s quickly jump to ShowData() method.

    

private void ShowData()

        {           

            SMARTGridView1.DataSource = (List<Person>)this.ViewState[“PersonList”];

            SMARTGridView1.DataBind();

        }

 

This method is even simpler than the previous one. Before we look at the code behind different buttons lets take a look at how our gird looks like after the page loads:

 

Let’s start looking at the code behind different buttons. First comes the View button:

 

protected void btnView_Click(object sender, EventArgs e)

        {

            SMARTGridView1.DisplayMode = 0;

            ShowData();

        }

 

In this method I’m just setting SMARTGridView’s display mode to 0, i.e. view mode; and then subsequently calling ShowData() method, which gets data from view state and bind the grid. Next comes the Add button:

   

protected void btnAdd_Click(object sender, EventArgs e)

        {

            SMARTGridView1.DisplayMode = 1;

            ShowData();

 

            List<Person> lstPerson = GetGridData();

            lstPerson.Add(new Person(0, string.Empty));

           

            SMARTGridView1.DataSource = lstPerson;

            SMARTGridView1.DataBind();

        }

 

The first thing that we need to do is, set display mode of the gird to edit mode so that we can see text boxes in the whole grid instead of read-only labels. Then call ShowData() so that data can be loaded into text boxes. After this we’ll add a new person in the list and bind that list to our grid. This way we’ll get an effect of having all the rows same as previous plus one empty row added in the bottom of the grid, form looks like this:

As you can see an empty row added in the grid and all we need to do is enter some id and text value for person id and name and then select Save button. Let’s do that:

 

Tadaaa!!

 

Now we obviously want to see what magic Save button is doing:

 

   

protected void btnSave_Click(object sender, EventArgs e)

        {

            if (this.SMARTGridView1.DisplayMode == 1)

            {

                this.ViewState[“PersonList”] = GetGridData();

                SMARTGridView1.DisplayMode = 0;

                ShowData();

            }

        }

 

The job of Save button is again straight forward. It gets all the data loaded in the grid, convert it into list of persons and save it into view state. In real world system this is the point where you might want to call data access layer’s method to actually save the list into the database. In next line it sets grid’s display mode back to 0 i.e. view and lastly calls the ShowData() method so that changes made can be displayed into the grid. GetGridData collects the data from the grid. It reads the grid row-by-row and for each row creates a new object of person class; sets id and name of the person from id and name text boxes of the current row; adds this newly created person object in a list and move to the next row and so on. Let’s take a look at actual code:

 

 

 

// Line numbers are given for understanding and are not part of the actual code

  private List<Person> GetGridData()

        {

01          List<Person> lstPerson = new List<Person>();

            int intTemp;

 

02          foreach (GridViewRow row in this.SMARTGridView1.Rows)

            {

03              if (row.RowType == DataControlRowType.DataRow)

                {

04                  Person person = new Person();

 

05                  TextBox txtGridID = (TextBox)row.FindControl(“txtGridID”);

06                  if (txtGridID != null && int.TryParse(txtGridID.Text, out intTemp))

                        person.ID = intTemp;

 

                    TextBox txtGridText = (TextBox)row.FindControl(“txtGridText”);

                    if (txtGridText != null)

                        person.Name = txtGridText.Text;

 

07                  lstPerson.Add(person);

                }

            }

 

08          return lstPerson;

        }

 

 

 

 

 

Line 01 creates a new blank list. Line 02 starts a loop on the grid rows. Line 03 checks whether the current row in the loop is a data row or any other row e.g. header or footer rows that might not have the text boxes we are looking for. Line 04 creates an object of Person class. Line 05 finds txtGridID text box in the current row and gets its text property in a temporary integer variable intTemp (line 06). The same line is repeated for txtGridText for name of the person. After we have both the properties of person, in line 07, we add the person in the list we created above. After the loop is finished we return our person list back to caller method. Last is the turn for Edit button:

  Edit button is pretty similar to View button, except former toggles the display mode to Edit and latter sets it to view. After selecting edit button you can make changes in the whole grid like in excel sheet and then click save button the two screen shots are as follows:

protected void btnEdit_Click(object sender, EventArgs e)

        {

            SMARTGridView1.DisplayMode = 1;

            ShowData();

        }

 

 

 

In this screen I selected Edit button, made changes in the grid and then hit Save button and got the following screen with all my changes saved.

 

 

So again you saw how easy it is to add a custom functionality in any of the controls provided with .NET. Follow the line by line instructions to make this control and make it .dll file for using it in any projects where you might need. I mostly used this grid in accounting modules of different projects where user needs to make changes in bulk and wants some spreadsheet kind of functionality. Should you have any questions regarding the article or a few words of ovation, please don’t hesitate in contacting me or submit your thoughts as comments to this post.

 

Until next time. Sayonara…

64 Comments »

  1. Hi Sayonara, the bulk edit grid is a great post however I am having a problem getting it running – error creating the control, invalid tag for “wisdomControls:SMARTGridView”, and when I copied / pasted the text the double quotes change slightly and become invalid.

    On one of your pages you indicate the source code is available – could you email the zip file?

    Thanks
    Tim.

    Comment by Tim — February 22, 2009 @ 10:43 pm

  2. could you email the zip file of you sample ?
    Thanks
    Adam.

    Comment by Grare — March 5, 2009 @ 11:40 pm

  3. Hi,

    Can you please send me the source code.

    thanks in advance
    KHAN

    Comment by Khan — July 22, 2009 @ 10:43 am

  4. Hello,
    Can u send mee th source code. My id is shanaj_ml2000@yahoo.com

    Thanks

    Comment by Shan — August 11, 2009 @ 10:04 am

  5. Could you pls send me the source code to may mail id eashwar2k6@gmail.com.
    Thanks for great effort.

    Comment by eashwar v — August 25, 2009 @ 5:51 am

  6. Could you pls send me the source code to my mail, Thanks you for your great effort.

    Comment by alvin — September 9, 2009 @ 3:50 pm

  7. Hi Mukarram,
    Great article.Appreciating your effort.Could you please send the zipped project to me

    Thanks,
    Binto

    Comment by Binto — November 11, 2009 @ 8:47 am

  8. Hi Mukarram,
    May I have a copy of the source code for this, also. This is exactly what I needed. Thanks very much!
    Regards,
    CJHInNashville

    Comment by CJHInNashville — November 24, 2009 @ 5:59 pm

  9. Is there wa way to get a copy of the cource code posted or sent to me?

    Comment by Travis — December 9, 2009 @ 2:46 pm

  10. Dear Mukarram,

    I don’t know if this post is now old but I really need the source code of this gridview, can you please send it to r16112000@hotmail.com
    Thank you in advance Mr.
    Best Regards.

    Comment by Rabih — April 12, 2010 @ 7:29 am

  11. Hi , Could you please send me the source code of the same ,i was on the look out for the same functionality ,i tried ur code but gives error :
    error creating the control, invalid tag for “wisdomControls:SMARTGridView”
    Email At: prashant.panwalkar@gmail.com

    Comment by Prashant — May 17, 2010 @ 8:40 am

  12. Dear Mr.Mukarram,

    Your article is of great interest. Could you send me the latest source code? I really appreciate it.

    Thank you,

    Hanifa

    Comment by Hanifa Maricar — August 8, 2010 @ 9:16 pm

  13. Dear Mukarram,

    Great Article. Could you please send me the source code @tsaimrudula@gmail.com

    Thanks,
    Mrudula.

    Comment by Mrudula — August 26, 2010 @ 3:10 pm

  14. Could you send me the latest source code for bulk update?

    Comment by Kokila — September 29, 2010 @ 7:04 am

  15. Could you send me the latest source code for bulk update to kokilasugadev@yahoo.com

    Comment by Kokila — September 29, 2010 @ 7:05 am

  16. Great Article. Could you please send me the source code @ mr.sajan.mr@gmail.com

    Comment by Sajan — November 12, 2010 @ 4:39 am

  17. where is the RowCreated method?

    Comment by Henrique — December 14, 2010 @ 9:10 am

    • CreateRow method is given in the SMARTGridView class, I don’t know why you need RowCreated method.

      Comment by Mukarram Mukhtar — December 14, 2010 @ 2:31 pm

  18. This is a really nice article. Could you send me the source code my email address: cswimbound2001@gmail.com
    Thanks in advance!

    Comment by Chris — January 11, 2011 @ 3:01 pm

  19. plz send me zip file

    Comment by sandeep — February 28, 2011 @ 10:00 am

    • Sandeep, your e-mail address was invalid. I get failure notice when I try to send it.

      Comment by Mukarram Mukhtar — February 28, 2011 @ 2:43 pm

  20. I must confess that this is “Indeed Nice Work/Article”. I had referred the similar article from mattdotson but did not follow up.
    The spreasheet look and feel is impressive.
    Could you please send me the complete source code at manish_kale@hotmail.com .i will definitely give it a shot this time.

    Best Regards

    Comment by Manish Kale — March 2, 2011 @ 5:50 pm

  21. Could you please send me the complete source code. Thanks!

    Would this work for VB.Net? I do not know C#.

    Thanks,
    Chris

    Comment by Chris — April 18, 2011 @ 3:45 pm

    • Hi Chris, source code has been forwarded to you. And yes, it will work for vb.net too, but you’ll have to make a dll of the new bulk edit grid view control and then add the dll’s reference in any project you want. Hope that answers your question.

      Comment by Mukarram Mukhtar — April 18, 2011 @ 5:45 pm

      • Mukarram — is it possible to forward me the complete source code behind this? I would really appreciate it. Thank you so much for this. very helpful. Seems I am missing something though that you probably have in your source.

        Comment by Tim Nash — May 11, 2011 @ 5:05 pm

  22. Could you send me the source code .Thanks! mingxin86@gmail.com

    Comment by Andrew — April 22, 2011 @ 5:53 am

    • You forgot to say please :p

      Comment by Mukarram Mukhtar — April 22, 2011 @ 1:51 pm

  23. Hi Mukarram:

    Very informative article. Could you please send me the complete source code.

    I am new to AspNet programming. This would be a great help.

    Thanks!
    GC

    Comment by GChandra — May 2, 2011 @ 5:07 pm

  24. Hi.. In gridview i have 3 rows month,working days, holidays, and 12 columns..
    month is readonly.. other two rows of textboxes should be editable on page load..
    i have two enter working days and holidays for corresponding month then save all 12
    rows of record on pressing only one save button.. please help me.. if possible mail me… shrusharan@gmail.com

    Comment by shruthi — May 31, 2011 @ 6:59 am

  25. Hi.. In gridview i have 3 rows month,working days, holidays, and 12 columns..
    month is readonly.. other two rows of textboxes should be editable on page load..
    i have two enter working days and holidays for corresponding month then save all 12
    rows of record on pressing only one save button.. please help me.. if possible mail me… shrusharan@gmail.com .. thanks in advance..

    Comment by shruthi — May 31, 2011 @ 7:00 am

  26. Hi ,
    I am getting error. Can you please send source code to sreevib@gmail.com

    Comment by sree — June 9, 2011 @ 9:24 pm

  27. would be nice if you posted this code somewhere, if you are sending it out please send a copy to fitzgeraldbk@missouri.edu. thanks.

    Barry

    Comment by Barry — July 15, 2011 @ 9:02 pm

    • what do you mean, Barry? I HAVE posted the code up there in the article. Do you want a copy of the project?

      Comment by Mukarram Mukhtar — July 18, 2011 @ 4:38 pm

      • Yes, by code I meant the project so I don’t have to copy paste all this stuff and figure out where it goes. It does look very promising though. Just seems it would be easier on you if the project was posted for download so you don’t have to handle all these requests. Anyway, if you can send it to me at fitzgeraldbk@missouri.edu I would really appreciate it. Thanks.

        Barry

        Comment by Barry — July 18, 2011 @ 5:29 pm

      • I wanted to post the project zip file along with the article but word press doesn’t provide such a feature. If you know how to do it, then please let me know. E-mail with project zip file is on its way.

        Comment by Mukarram Mukhtar — July 18, 2011 @ 7:43 pm

  28. I think this is one of the most vital info for me. And i’m glad reading your article. But should remark on few general things, The website style is perfect, the articles is really great : D. Good job, cheers

    Comment by Boracay — July 30, 2011 @ 7:10 am

  29. Hi ..
    was trying to do implement bulk edit,
    please email the source code to binsyab@gmail.com .
    Thanks

    Comment by binsy — August 10, 2011 @ 6:59 am

  30. Hi ..

    was trying to do implement bulk edit,

    Can you please email the source code to jolmedapr@gmail.com .

    Thank you very much.

    Comment by Jorge — August 24, 2011 @ 7:55 pm

  31. Hi ..
    was trying to do implement bulk edit,
    please email the source code to michael.flanagan@genspring.com.
    Thanks
    Mike

    Comment by Mike — December 12, 2011 @ 8:30 pm

  32. Hi, very interesting post!
    How to resolve if a column is a button for a search dialog?
    And if i have columns count (textbox), price (textbox) and total (label) and need to update the total label after textboxes coun or price are validated (or lost focus)?
    Can you email me the source code (diegospc@live.com.ar)
    Thanks a lot!

    Comment by Diego — January 3, 2012 @ 7:29 pm

    • Diego, I’ll surely e-mail you the source code of the project demoed in the above article. However, I might not be able to provide you a solution code for your particular requirements. I hope you’ll understand. Thanks!

      Comment by Mukarram Mukhtar — January 4, 2012 @ 4:23 pm

      • I understand, thank you very much for the zip Mukarram

        Comment by Diego — January 4, 2012 @ 4:30 pm

  33. hi i have problem in gridview click on edit event not showing gridview only textboxes show after click on update button show gridview and textboxes blank
    so please help me

    Comment by hitesh — January 5, 2012 @ 12:27 pm

  34. Great post. I would appreciate if you could forward me the project zip file. Thanks in advance: jeff94c@hotmail.com

    Comment by JP — January 15, 2012 @ 8:37 pm

  35. Hi.

    My SampleGridView.aspx.cs shows me error >> “Cannot resolve the symbol SMARTGridView1

    Pls email me the source code in ankured182@yahoo.com

    Comment by Liton Debnath Ankur — January 16, 2012 @ 9:38 am

  36. Thanks a lot for the email and the Great Job , Found this much simpler than what Matt Dotson did.

    I have uploaded the file to Mediafire , so other can Download it 🙂

    Comment by Liton Debnath Ankur — January 18, 2012 @ 1:46 pm

    • Hi Liton Debnath Ankur
      can you please tell me how to get from media fire
      Thanks
      Ramachandran

      Comment by Ramachandran — October 15, 2012 @ 12:32 pm

  37. can send me the code in a zip file to anitavang123@gmail.com. I am getting error near <wisdomControls:SMARTGridView, visual studio2010 did not create GlobalSample.css file.

    Comment by Anita — January 31, 2012 @ 4:18 am

  38. Great job. Can you plesae send me the source code zip file to itransz05@gmail.com. Thanks

    Comment by VS — February 1, 2012 @ 2:45 pm

  39. Great job. Can you please send me the source code zip file to lloyd.shimabukuro@dof.ca.gov Thanks

    Comment by Lloyd Shimabukuro — February 9, 2012 @ 7:27 pm

  40. Great post. I would appreciate if you could forward me the project zip file. Thanks in advance:

    Comment by Jenna — March 22, 2012 @ 4:41 am

    • sorry i forgot to tell you my email, please send to josdlaugh@gmail.com

      Comment by Jenna — March 22, 2012 @ 10:42 pm

      • never mind, i’m a complete dip. thank you very much for the code

        Comment by Jenna — March 22, 2012 @ 10:43 pm

      • You are very welcome! 🙂

        Comment by Mukarram Mukhtar — March 23, 2012 @ 2:56 pm

  41. Great post!!! Could you please me the source code zip file to bnathreddy@yahoo.com
    Thanks
    nath

    Comment by nath — July 13, 2012 @ 10:25 pm

  42. Mr. Mukarram,

    Please send me the source code of “Bulk Edit GridView in .NET” to bnathreddy@yahoo.com

    Thanks in advance
    nath

    Comment by nath — July 13, 2012 @ 10:27 pm

  43. Hello Sir,
    I want to do this code in .aspx.vb code behind file of .aspx file…i don’t know how to do it?.so can you help me sir….plz send me the sample code to my mail id….. my mail id : rexitaann@gmail.com

    Thanks in Advance,
    Jeni….

    Comment by Jeni — September 8, 2012 @ 4:05 pm

  44. Could you pls send me the source code to my mail id chandran.nr@gmail.com
    Thanks for great effort.

    Comment by Ramachandran Narayanan — October 15, 2012 @ 9:55 am

  45. I’ll add my request to the pile – can you please email me the project .zip file? I’m having some problems getting it to compile when I copy and paste the code, even though I’ve fixed all the quotation marks, etc. My address is timbck2 @ gmail.com.

    Comment by Tim Buck — October 15, 2012 @ 6:31 pm

  46. Hey this is great. Could you please send me the source code to my email address. thank you jtkqazwsx@gmail.com

    Comment by Jaime — November 14, 2012 @ 11:36 pm

  47. Great Work.. Please send me the source code to Hoseki210@gmail.com

    Comment by Sunder — December 3, 2012 @ 6:24 pm

  48. Thanks a lot for taking time in order to post “Bulk Edit GridView in .

    NET Mukarram Mukhtar”. Thanks a ton yet again ,Karol

    Comment by http://tinyurl.com/monocroft35953 — February 5, 2013 @ 6:38 pm

  49. Hi, great tutorial, please send me a copy. madcable@gmail.com
    thank you

    Comment by madcable@gmail.com — March 5, 2013 @ 4:51 am

  50. can you please send the source code to my maiil ID rajesh@ttssl.com

    Comment by rajesh — May 8, 2013 @ 11:51 am


RSS feed for comments on this post. TrackBack URI

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

%d bloggers like this: