Click here to Skip to main content
Click here to Skip to main content

Extracting Values from a Gridview

, 21 Jan 2010
Rate this:
Please Sign up or sign in to vote.
Extracting Values from a Gridview

Introduction

I have frequently come across the requirement where values from a gridview need to be extracted. The code here is a generic one that extracts the cell values in a given row and returns the collection.

Using the Code

The code is given below:

public IDictionary<string, object> GetValues(GridViewRow row)
{
    IOrderedDictionary dictionary = new OrderedDictionary();

    foreach (Control control in row.Controls)
    {
        DataControlFieldCell cell = control as DataControlFieldCell;

        if ((cell != null) && cell.Visible)
        {
            cell.ContainingField.ExtractValuesFromCell
			(dictionary, cell, row.RowState, true);
        }
    }

    IDictionary<string, object> values = new Dictionary<string, object>();

    foreach (DictionaryEntry de in dictionary)
    {
        values[de.Key.ToString()] = de.Value;
    }

    return values;
} 

The values returned can be accessed in the following way:

GridViewRow row = GridView1.Rows[e.RowIndex];
var m_values = this.GetValues(row);
string userid = m_values["UserID"].ToString();

where the string value is the Column name in the GridView.

The above code might not work properly in case of cells having UserControls. For all other cases whether it be a bound field or template field, the code would work.

History

  • 21st January, 2010: Initial post

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

SachinKumarK
Web Developer
India India
No Biography provided

Comments and Discussions

 
GeneralHi PinmemberKalyani Kailasamoni28-May-10 4:51 
GeneralRe: Hi PinmemberSachinKumarK28-May-10 5:09 
GeneralMy vote of 1 PinmemberJohn_Crocker21-Jan-10 21:55 
GeneralHi PinmemberAnil Srivastava21-Jan-10 18:55 
GeneralMy vote of 1 PinmvpSacha Barber21-Jan-10 11:21 
Generalgood job PinmemberArlen Navasartian21-Jan-10 9:37 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web02 | 2.8.140721.1 | Last Updated 21 Jan 2010
Article Copyright 2010 by SachinKumarK
Everything else Copyright © CodeProject, 1999-2014
Terms of Service
Layout: fixed | fluid