private void BindGridViewDetail()
        {
            cBudget_money oBudget_money = new cBudget_money();
            DataSet       ds            = new DataSet();
            string        strMessage    = string.Empty;
            string        strCriteria   = string.Empty;

            strCriteria = " And  (budget_money_doc = '" + ViewState["budget_money_doc"].ToString() + "') ";
            try
            {
                if (!oBudget_money.SP_BUDGET_MONEY_DETAIL_SEL(strCriteria, ref ds, ref strMessage))
                {
                    lblError.Text = strMessage;
                }
                else
                {
                    try
                    {
                        GridViewDetail.PageIndex      = 0;
                        ds.Tables[0].DefaultView.Sort = ViewState["sort"] + " " + ViewState["direction"];
                        GridViewDetail.DataSource     = ds.Tables[0];
                        GridViewDetail.DataBind();
                    }
                    catch
                    {
                        GridViewDetail.PageIndex      = 0;
                        ds.Tables[0].DefaultView.Sort = ViewState["sort"] + " " + ViewState["direction"];
                        GridViewDetail.DataSource     = ds.Tables[0];
                        GridViewDetail.DataBind();
                    }
                }
            }
            catch (Exception ex)
            {
                lblError.Text = ex.Message.ToString();
            }
            finally
            {
                if (GridViewDetail.Rows.Count == 0)
                {
                    EmptyGridFix(GridViewDetail);
                }
                oBudget_money.Dispose();
                ds.Dispose();
            }
        }