public void grdpl1_DeleteCommand(object sender, DataGridCommandEventArgs e)
 {
     String DetailId = "";
     DetailId = grdpl1.DataKeys[Convert.ToInt32(e.Item.ItemIndex)].ToString();
     Whitfieldcore _dbClass = new Whitfieldcore();
     _dbClass.DELETEMaterialinWorkOrder(Convert.ToInt32(ViewState["EstNum"].ToString()), ViewState["WorkOrderID"].ToString(),Convert.ToInt32(DetailId));
     this.DisplayGrid(Convert.ToInt32(ViewState["EstNum"].ToString()), ViewState["WorkOrderID"].ToString());
        // ((YourPageClass)this.Page).YourMethod();
     Page.GetType().InvokeMember("DisplayGrid", BindingFlags.InvokeMethod, null, this.Page, null);
 }
    public void Page_Load(object sender, EventArgs e)
    {
        Whitfieldcore _wc = new Whitfieldcore();
        // 1
        // Get collection
        NameValueCollection n = Request.QueryString;
        if (!Page.IsPostBack)
        {
            //tabWhitfieldParms
            if (Request.Cookies["RoleId"].Value == "2")
            {
                tabconsideration.HeaderText = "";
                tabconsideration.Visible = false;
            }
            // See if any query string exists
            if (n.HasKeys())
            {
                // 3
                // Get first key and value
                string k = n.GetKey(0);
                string v = n.Get(0);

                if (Request.QueryString["hFlag"] == "D")
                {
                    _wc.DeleteProjDocument(Convert.ToInt32(Request.QueryString["EstNum"]), Convert.ToInt32(Request.QueryString["seqno"]));
                    ViewState["EstNum"] = Request.QueryString["EstNum"].ToString();
                    DataSet dsGridResults = this.GetDocs();
                    this.PopulateDataGrid(dsGridResults, grddocs);
                }

                if (Request.QueryString["hFlag"] == "DMaterial")
                {
                    _wc.DeleteSubMaterialsFromEstimation(Convert.ToInt32(Request.QueryString["EstNum"]), Convert.ToInt32(Request.QueryString["submatid"]));
                    _wc.DELETEMaterialinWorkOrder(Convert.ToInt32(Request.QueryString["EstNum"]), Convert.ToInt32(Request.QueryString["submatid"]));
                    ViewState["EstNum"] = Request.QueryString["EstNum"].ToString();
                    DataSet dsGridMaterials = _wc.GetMaterialForEsitmation(Convert.ToInt32(Request.QueryString["EstNum"]));
                    this.PopulateDataGrid(dsGridMaterials,grdEstimateMaterials);
                }

                // 4
                // Test different keys
                if (k == "createNew")
                {
                    EstNum = _wc.GenerateEstNum();
                    ViewState["EstNum"] = EstNum.ToString();
                    bindcontrols(EstNum);
                    ddlEstimator.SelectedIndex = ddlEstimator.Items.IndexOf(ddlEstimator.Items.FindByValue(Request.Cookies["UserId"].Value.Trim()));

                }

                if (k == "EstNum")
                {
                    EstNum = Convert.ToInt32(v);  // Here goes the code for the creation of new EstNum
                    ViewState["EstNum"] = EstNum;
                    this.FetchAndBind(EstNum);
                }

            }
            else
            {
                if (n.HasKeys())
                {
                    string k = n.GetKey(0);
                    string v = n.Get(0);
                    if (k == "EstNum")
                    {
                        EstNum = Convert.ToInt32(v);  // Here goes the code for the creation of new EstNum
                        ViewState["EstNum"] = EstNum;
                        this.FetchAndBind(EstNum);
                    }
                }
                else
                {
                    EstNum = Convert.ToInt32(ViewState["EstNum"].ToString());
                    this.FetchAndBind(EstNum);
                }
            }

            Response.Cookies["EstNum"].Value = EstNum.ToString();
            hdnEstNum.Value = EstNum.ToString();

            //Bind the clients and competition and Conversation Log
            try
            {
                grdclients.PageSize = _DEFAULTPAGESIZE;
                DataSet dsGridResults;
                dsGridResults = this.Project_clients();
                this.PopulateDataGrid(dsGridResults, grdclients);
            }

            catch (Exception exp)
            {
                Response.Write(exp.Message.ToString());
            }

            try
            {
                grdcompe.PageSize = _DEFAULTPAGESIZE;
                DataSet dsGridResults;
                dsGridResults = this.Project_competition();
                this.PopulateDataGrid(dsGridResults, grdcompe);
            }

            catch (Exception exp)
            {
                Response.Write(exp.Message.ToString());
            }
            //***
            try
            {
                grdcompe.PageSize = _DEFAULTPAGESIZE;
                DataSet dsGridResults;
                dsGridResults = this.GetConversationLog();
                this.PopulateDataGrid(dsGridResults, grdConvHist);
            }
            catch (Exception exp)
            {
                Response.Write(exp.Message.ToString());
            }

            //EmailLog
            try
            {
                grdEmailLog.PageSize = _DEFAULTPAGESIZE;
                DataSet dsGridResults;
                dsGridResults = this.GetEmailLog();
                this.PopulateDataGrid(dsGridResults,grdEmailLog);
            }
            catch (Exception exp)
            {
                Response.Write(exp.Message.ToString());
            }

            //GetDocumentsforProject
            try
            {
                grdcompe.PageSize = _DEFAULTPAGESIZE;
                DataSet dsGridResults;
                dsGridResults = this.GetDocs();
                this.PopulateDataGrid(dsGridResults, grddocs);
            }
            catch (Exception exp)
            {
                Response.Write(exp.Message.ToString());
            }

            //GetMaterialsForEstimates
            try
            {
                grdEstimateMaterials.PageSize = _DEFAULTPAGESIZE;
                DataSet dsGridMaterials;
                dsGridMaterials = _wc.GetMaterialForEsitmation(Convert.ToInt32(ViewState["EstNum"].ToString()));
                this.PopulateDataGrid(dsGridMaterials,grdEstimateMaterials);
            }
            catch (Exception exp)
            {
                Response.Write(exp.Message.ToString());
            }
        }
        else
        {
            pHprojClient.Visible = true;
            pHprojcompe.Visible = true;
        }
    }
 public void grdpl1_DeleteCommand(object sender, DataGridCommandEventArgs e)
 {
     String DetailId = "";
     DetailId = grdpl1.DataKeys[Convert.ToInt32(e.Item.ItemIndex)].ToString();
     Whitfieldcore _wc = new Whitfieldcore();
     _wc.DeleteWorkOrders(DetailId, ViewState["EstNum"].ToString());
     _wc.DELETEMaterialinWorkOrder(Convert.ToInt32(ViewState["EstNum"].ToString()), DetailId);
     this.DisplayGrid();
 }