Advertisement

07.06.2007 at 08:48AM PDT, ID: 22679632
[x]
Attachment Details

DataGrid Editing in C#

Asked by WabashIT in Microsoft ASP.NET Web Matrix, C# Programming Language, Programming for ASP.NET

Tags: datagrid, edit

I'm currently developing an In/Out board and wanted to add a drop down list to the In/Out column. I have tried many different things but other examples are running me in circles. Here is my code thus far. I wanted to add the ddl on the employeeStatus field below when user clicks edit. Any suggestions?

using System;
using System.Collections;
using System.IO;
using System.Configuration;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.OleDb;
using System.Data.SqlClient;


public class InOut : Page
{

      public DataGrid     gridBO;
        public string sqlStatement1  = "Select * FROM Employee WHERE employeeDepartmentId = 1 ORDER BY employeeDepRank";




protected void page_load(Object s, EventArgs e)
{

    if(!IsPostBack)
    {

        BindData();

    }


}

protected void BindData()
{
        OleDbConnection objConn = new OleDbConnection(ConfigurationSettings.AppSettings["wabash"]);
        OleDbCommand objCmd   = new OleDbCommand(sqlStatement1,  objConn);
        objConn.Open();
        OleDbDataReader objRdr = objCmd.ExecuteReader();
        gridBO.DataSource = objRdr;
        gridBO.DataBind();
        objRdr.Close();
        objConn.Close();
}


protected void gridBO_Edit(Object s, DataGridCommandEventArgs e)
{
    gridBO.EditItemIndex = e.Item.ItemIndex;
    BindData();

}

protected void gridBO_Cancel(Object s, DataGridCommandEventArgs e)
{
    gridBO.EditItemIndex = -1;
    BindData();

}

protected void gridBO_Update(Object s, DataGridCommandEventArgs e)
{
    int employeeDepRank = (int)gridBO.DataKeys[e.Item.ItemIndex];
    string strStatus   = ((TextBox)e.Item.Cells[0].Controls[0]).Text;
    string strComments = ((TextBox)e.Item.Cells[3].Controls[0]).Text;
    string strCmd = "UPDATE Employee Set employeeStatus='" + strStatus + "', employeeComments='" + strComments + "' WHERE employeeDepRank=" + employeeDepRank;

    OleDbConnection objConn = new OleDbConnection(ConfigurationSettings.AppSettings["wabash"]);
    OleDbCommand objCmd = new OleDbCommand(strCmd, objConn);

    objConn.Open();
    objCmd.ExecuteNonQuery();
    objConn.Close();

    gridBO.EditItemIndex = -1;
    BindData();

}


*************************************************************************************

<%@ Page Language="C#" Debug="true" Inherits="InOut" Src="myles.cs" %>
<script runat="server">


</script>
<html>
<head>
</head>
<body>
    <form runat="server">
        <!-- NEW IN OUT DATAGRID -->
        <center>
            <asp:DataGrid id="gridBO" runat="server" OnEditCommand="gridBO_Edit" OnCancelCommand="gridBO_Cancel" OnUpdateCommand="gridBO_Update" DataKeyField="employeeDepRank" AutoGenerateColumns="False">
                <ItemStyle font-name="Arial" font-size="10pt" forecolor="#000000" />
                <HeaderStyle font-name="Arial" font-size="12pt" font-bold="true" backcolor="#658bbc" forecolor="#FFFFFF" />
                <AlternatingItemStyle font-name="Arial" font-size="10pt" backcolor="#e3efff" />
                <Columns>
                    <asp:BoundColumn DataField="employeeStatus" HeaderText="Name" />
                    <asp:BoundColumn DataField="employeeName" HeaderText="Name" ReadOnly="true" />
                    <asp:BoundColumn DataField="employeePhone" HeaderText="Phone" ReadOnly="true" />
                    <asp:BoundColumn DataField="employeeComments" HeaderText="Comments" />
                    <asp:EditCommandColumn EditText="Edit" CancelText="Cancel" UpdateText="Update" />
                </Columns>
            </asp:DataGrid>
        </center>
        <center><asp:Label id="lblStatus" runat="server"> </asp:Label>
        </center>
        <!-- END IN OUT DATAGRID -->
    </form>
</body>
</html>


Start Free Trial
[+][-]07.06.2007 at 11:40AM PDT, ID: 19433996

View this solution now by starting your 7-day free trial. Setting up your free trial is quick, easy, and secure. We will return you to this solution, unlocked, when you're done.

 

About this solution

Zones: Microsoft ASP.NET Web Matrix, C# Programming Language, Programming for ASP.NET
Tags: datagrid, edit
Sign Up Now!
Solution Provided By: brdrok
Participating Experts: 1
Solution Grade: A
 
 
[+][-]07.06.2007 at 01:04PM PDT, ID: 19434587

Often, when Experts are collaborating with members who have asked questions, they will request additional information about the problem. Askers respond with an author comment like this one.

Start your 7-day free trial to view this Author Comment or ask the Experts your question.

 
 
Loading Advertisement...
20080716-EE-VQP-32