none
Problemas com bind de gridview e autopostback em página asp RRS feed

  • Pergunta

  • Salve pessoal !

    Estou com um problema que esta me matando!!!!!

    Ta trancando meu projeto e não consigo resolver esse perrengue, gostaria que os amigos de plantão me dessem ao menos uma luz.

    Negócio é o seguinte:

    Tenho uma gridview que recebe um datatable vindo de uma camada de acesso à dados, essa gridview possui header e footer e eu adiciono dados diretamente nela através de controles inseridos na mesma com templates fields. Até aí maravilha. No momento em que essa grid recebe um dtb vazio (nulo) são criado os campos para mostrar header, footer e adiciono uma linha com a mensagem "não existe registros", beleza, show de bola. São criados os controles no footer direitinho, porem em um deles (um dropdownlist mais especificamente) preciso de um evento, para poder habilitar/desabilitar outros controles contidos na nesma grid, ae a coisa preteia. Habilitei o autopostback desse controle, para poder pegar o evento ontextchanged do mesmo, porém quando o se efetua o postback, aquela linha que eu adicionei na grid com a mensagem do que não foram encontrados registros some e parece que os controles aparecem à direita da gridview, como se tivesse inserido um registro na mesma, porém todos vazios. Não é inserido nada no banco, pois quando dou um refresh na página, ela volta ao normal, é só quando é gerado o postback. Abaixo seguem meus código pra análise. Espero realmente que alguma boa alma me ajude, ou pelo menos tenha alguma outra idéia!

    Agradeço aos amigos!

    agendamentos.cs

    using BLL;
    using MDL;
    using System;
    using System.Collections.Generic;
    using System.Data;
    using System.Linq;
    using System.Web;
    using System.Web.UI;
    using System.Web.UI.HtmlControls;
    using System.Web.UI.WebControls;
    
    namespace app.views
    {
        public partial class agendamentos : System.Web.UI.Page
        {
            private enum escolha
            {
                SIM = 0,
                NÃO = 1
            }
            private enum tipo
            {
                TROCA = 1,
                ENTREGA = 2
            }
            private enum cobranca
            {
                ENTREGA = 0,
                RETIRADA = 1,
                ESCRITÓRIO = 2
            }
            protected void Page_Load(object sender, EventArgs e)
            {
                if (!IsPostBack)
                {
                    this.AtualizaGrid(gdvAgendamento, "'Agendada'");                
                }
            }
            protected void AtualizaGrid(Control parent, string situacao)
            {
                if (object.ReferenceEquals(parent.GetType(), typeof(GridView)))
                {
                    DataTable dtb = null;
                    dtb = sys_locacoesBLL.ListarBLL("'Agendada'");
    
                    if (dtb.Rows.Count > 0)
                    {
                        ((GridView)parent).DataSource = dtb;
                        ((GridView)parent).DataBind();
                    }
                    else
                    {
                        dtb.Rows.Add(dtb.NewRow());
                        ((GridView)parent).DataSource = dtb;
                        ((GridView)parent).DataBind();
    
                        int TotalColunas = ((GridView)parent).Rows[0].Cells.Count;
                        ((GridView)parent).Rows[0].Cells.Clear();
                        ((GridView)parent).Rows[0].Cells.Add(new TableCell());
                        ((GridView)parent).Rows[0].Cells[0].ColumnSpan = TotalColunas;
                        ((GridView)parent).Rows[0].Cells[0].Text = "Registro não encontrado !";
                    }
                }
            }
            protected void gdvAgendamento_RowCommand(object sender, GridViewCommandEventArgs e)
            {
                sys_locacoesMDL mdlLocacao = new sys_locacoesMDL();
    
                if (e.CommandName.Equals("Insert"))
                {
                    TextBox txtNewValAut = (TextBox)gdvAgendamento.FooterRow.FindControl("txtNewValAut");
                    TextBox txtNewNumAut = (TextBox)gdvAgendamento.FooterRow.FindControl("txtNewNumAut");
                    TextBox txtNewObservacao = (TextBox)gdvAgendamento.FooterRow.FindControl("txtNewObservacao");
                    DropDownList dropNewTipo = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewTipo");
                    DropDownList dropNewCobranca = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewCobranca");
                    DropDownList dropNewUrgenciaEntrega = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewUrgenciaEntrega");
                    DropDownList dropNewCliente = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewCliente");
                    DropDownList dropNewEndereco = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewEndereco");
                    DropDownList dropNewAutorizacao = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewAutorizacao");
                    string dtPrevEntrega = ((HtmlInputText)gdvAgendamento.FooterRow.FindControl("inputPrevEntrega")).Value;
    
                    if (dtPrevEntrega == "")
                    {
                        string msgOk = "Digite a Data de Entrega!";
                        Page.ClientScript.RegisterStartupScript(this.GetType(), "init", "<script>alert('" + msgOk + ".');</script>");
                    }
                    else
                    {
                        mdlLocacao.PREVISAO_ENTREGA = Convert.ToDateTime(dtPrevEntrega);
                        if (Convert.ToInt16(dropNewEndereco.SelectedIndex) == 0)
                        {
                            string msgOk = "Selecione um Endereço para Entrega!";
                            Page.ClientScript.RegisterStartupScript(this.GetType(), "init", "<script>alert('" + msgOk + ".');</script>");
                        }
    
                        else
                        {
                            mdlLocacao.SYS_ENDERECO_ID = Convert.ToInt16(dropNewEndereco.SelectedValue);
                            mdlLocacao.FUNC_ENTREGA = null;
                            mdlLocacao.FUNC_RETIRADA = null;
                            mdlLocacao.VEICULO_ENTREGA = null;
                            mdlLocacao.VEICULO_RETIRADA = null;
                            mdlLocacao.QUITADO = false;
                            mdlLocacao.TIPO = dropNewTipo.SelectedItem.ToString();
                            mdlLocacao.SITUACAO = "Agendada";
                            mdlLocacao.URGENCIA_ENTREGA = dropNewUrgenciaEntrega.SelectedValue.ToString();
                            mdlLocacao.COBRANCA = dropNewCobranca.SelectedValue.ToString();
                            mdlLocacao.NUMERO_AUTORIZACAO = txtNewNumAut.Text;
    
                            if (dropNewAutorizacao.SelectedValue.ToString() == "SIM" && txtNewValAut.Text == "")
                            {
                                string msgOk = "Digite a data de Validade da Autorização!";
                                Page.ClientScript.RegisterStartupScript(this.GetType(), "init", "<script>alert('" + msgOk + ".');</script>");
                            }
                            else if (dropNewAutorizacao.SelectedValue.ToString() == "SIM" && txtNewValAut.Text != "")
                            {
                                mdlLocacao.AUTORIZACAO = "SIM";
                                mdlLocacao.VAL_AUTORIZACAO = Convert.ToDateTime(txtNewValAut.Text);
                            }
                            else
                            {
                                mdlLocacao.AUTORIZACAO = "NÃO";
                                mdlLocacao.VAL_AUTORIZACAO = Convert.ToDateTime(DateTime.MinValue);
    
                            }
                            mdlLocacao.OBSERVACAO = txtNewObservacao.Text;
                            try
                            {
                                sys_locacoesBLL.InserirBLL(mdlLocacao);
                                Response.Redirect("agendamentos.aspx");
                            }
                            catch (Exception erro)
                            {
                                throw erro;
                            }
                        }
                    }
                }
                else if (e.CommandName.Equals("Efetive"))
                {
                    GridViewRow row = ((GridViewRow)((ImageButton)e.CommandSource).Parent.BindingContainer);
    
                    mdlLocacao.ID = Convert.ToInt16(gdvAgendamento.DataKeys[row.RowIndex]["id"].ToString());
                    mdlLocacao.SITUACAO = "Ag.Entrega";
    
                    try
                    {
                        sys_locacoesBLL.AtualizarBLL(mdlLocacao, "situacao");
                        Response.Redirect("agendamentos.aspx");
                    }
                    catch (Exception erro)
                    {
                        throw erro;
                    }
                }
                else if (e.CommandName.Equals("Anular"))
                {
                    GridViewRow row = ((GridViewRow)((ImageButton)e.CommandSource).Parent.BindingContainer);
    
                    mdlLocacao.ID = Convert.ToInt16(gdvAgendamento.DataKeys[row.RowIndex]["id"].ToString());
                    mdlLocacao.SITUACAO = "Anulada";
    
                    try
                    {
                        sys_locacoesBLL.AtualizarBLL(mdlLocacao, "situacao");
                        Response.Redirect("agendamentos.aspx");
                    }
                    catch (Exception erro)
                    {
                        throw erro;
                    }
                }
                else if (e.CommandName.Equals("newCliente"))
                {
                    string script = "<script language='javascript'>window.open('clientes.aspx','titulijanela','channelmode=no, directories=no, height=550, left=100, location=no, menubar=no, resizable=yes, scrollbars=no,status=no, titlebar=no, toolbar=no, top=100, width=1050')</script>";
                    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "clientes", script, false);
                }
            }
            protected void gdvAgendamento_RowCancelingEdit(object sender, GridViewCancelEditEventArgs e)
            {
                gdvAgendamento.EditIndex = -1;
                gdvAgendamento.ShowFooter = true;
                Response.Redirect("agendamentos.aspx");
            }
            protected void gdvAgendamento_RowDeleting(object sender, GridViewDeleteEventArgs e)
            {
                sys_locacoesBLL.DeletarBLL(Convert.ToInt32(gdvAgendamento.DataKeys[e.RowIndex].Values[0].ToString()));
                Response.Redirect("agendamentos.aspx");
            }
            protected void gdvAgendamento_RowEditing(object sender, GridViewEditEventArgs e)
            {
                sys_locacoesMDL mdlLocal = new sys_locacoesMDL();
                gdvAgendamento.ShowFooter = false;
                gdvAgendamento.EditIndex = e.NewEditIndex;
                AtualizaGrid(gdvAgendamento, "'Agendada'");
    
                int id = Convert.ToInt32(gdvAgendamento.DataKeys[gdvAgendamento.EditIndex].Values[0].ToString());
    
                TextBox txtValAut = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtValAut");
                TextBox txtNumAut = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtNumAut");
                TextBox txtObservacao = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtObservacao");
                DropDownList dropTipo = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropTipo");
                DropDownList dropUrgenciaEntrega = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropUrgenciaEntrega");
                DropDownList dropCliente = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropCliente");
                DropDownList dropEndereco = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropEndereco");
                DropDownList dropCobranca = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropCobranca");
                DropDownList dropAutorizacao = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropAutorizacao");
                HtmlInputText inputPrevEntrega = ((HtmlInputText)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("inputPrevEnt"));
    
                try
                {
                    mdlLocal = sys_locacoesBLL.MostrarBLL(id);
                }
                catch (Exception erro)
                {
                    throw erro;
                }
    
                dropCliente.Items.Clear();
                dropCliente.DataSource = sys_clientesBLL.ListarBLL();
                dropCliente.DataBind();
                dropCliente.Items.Insert(0, "--Selecione--");
                dropCliente.SelectedValue = mdlLocal.SYS_CLIENTE_ID.ToString();
                Session["idCliente"] = mdlLocal.SYS_CLIENTE_ID;
    
                dropEndereco.Items.Clear();
                dropEndereco.DataSource = sys_enderecosBLL.ListarBLL(mdlLocal.SYS_ENDERECO_ID);
                dropEndereco.DataBind();
                dropEndereco.SelectedValue = mdlLocal.SYS_ENDERECO_ID.ToString();
                Session["idEndereco"] = mdlLocal.SYS_ENDERECO_ID;
    
    
                inputPrevEntrega.Value = mdlLocal.PREVISAO_ENTREGA.ToString();
                if (mdlLocal.AUTORIZACAO == "SIM")
                {
                    txtValAut.Enabled = true;
                    txtValAut.Text = mdlLocal.VAL_AUTORIZACAO.ToShortDateString();
                    txtNumAut.Enabled = true;
                    txtNumAut.Text = mdlLocal.NUMERO_AUTORIZACAO;
                }
                else if (mdlLocal.AUTORIZACAO == "NÃO")
                {
                    txtValAut.Enabled = false;
                    txtValAut.Text = "";
                    txtNumAut.Enabled = false;
                    txtNumAut.Text = "";
                }
    
                txtObservacao.Text = mdlLocal.OBSERVACAO;
                dropTipo.SelectedValue = mdlLocal.TIPO;
                dropUrgenciaEntrega.SelectedValue = mdlLocal.URGENCIA_ENTREGA;
                dropAutorizacao.SelectedValue = mdlLocal.AUTORIZACAO;
                dropCobranca.SelectedValue = mdlLocal.COBRANCA;
            }
            protected void gdvAgendamento_RowUpdating(object sender, GridViewUpdateEventArgs e)
            {
                sys_locacoesMDL mdlLocal = new sys_locacoesMDL();
    
                int id = Convert.ToInt32(gdvAgendamento.DataKeys[gdvAgendamento.EditIndex].Values[0].ToString());
                HtmlInputText inputPrevEntrega = ((HtmlInputText)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("inputPrevEnt"));
                TextBox txtValAut = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtValAut");
                TextBox txtNumAut = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtNumAut");
                TextBox txtObservacao = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtObservacao");
                DropDownList dropTipo = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropTipo");
                DropDownList dropUrgenciaEntrega = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropUrgenciaEntrega");
                DropDownList dropCliente = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropCliente");
                DropDownList dropEndereco = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropEndereco");
                DropDownList dropCobranca = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropCobranca");
                DropDownList dropAutorizacao = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropAutorizacao");
    
                mdlLocal.ID = id;
                mdlLocal.PREVISAO_ENTREGA = Convert.ToDateTime(inputPrevEntrega.Value);
                mdlLocal.NUMERO_AUTORIZACAO = txtNumAut.Text;
                mdlLocal.FUNC_ENTREGA = null;
                mdlLocal.FUNC_RETIRADA = null;
                mdlLocal.VEICULO_ENTREGA = null;
                mdlLocal.VEICULO_RETIRADA = null;
                mdlLocal.TIPO = dropTipo.SelectedItem.ToString();
                mdlLocal.SITUACAO = "Agendada";
                mdlLocal.URGENCIA_ENTREGA = dropUrgenciaEntrega.SelectedValue.ToString();
                mdlLocal.SYS_CLIENTE_ID = int.Parse(dropCliente.SelectedValue);
                mdlLocal.SYS_ENDERECO_ID = Convert.ToInt16(dropEndereco.SelectedValue);
                mdlLocal.COBRANCA = dropCobranca.SelectedValue.ToString();
    
                if (dropAutorizacao.SelectedValue.ToString() == "SIM")
                {
                    mdlLocal.AUTORIZACAO = "SIM";
                    mdlLocal.VAL_AUTORIZACAO = Convert.ToDateTime(txtValAut.Text);
                }
                else
                {
                    mdlLocal.AUTORIZACAO = "NÃO";
                    mdlLocal.VAL_AUTORIZACAO = Convert.ToDateTime("0001-01-01 00:00:00");
                }
                mdlLocal.OBSERVACAO = txtObservacao.Text;
    
                try
                {
                    sys_locacoesBLL.AtualizarBLL(mdlLocal, "tudo");
                    Response.Redirect("agendamentos.aspx");
                }
                catch (Exception erro)
                {
                    throw erro;
                }
            }
            protected void gdvAgendamento_RowDataBound(object sender, GridViewRowEventArgs e)
            {
                if (e.Row.RowType == DataControlRowType.DataRow)
                {
                    DropDownList dropTipo = (DropDownList)e.Row.FindControl("dropTipo");
                    DropDownList dropUrgenciaEntrega = (DropDownList)e.Row.FindControl("dropUrgenciaEntrega");
                    DropDownList dropAutorizacao = (DropDownList)e.Row.FindControl("dropAutorizacao");
                    DropDownList dropCliente = (DropDownList)e.Row.FindControl("dropCliente");
                    DropDownList dropCobranca = (DropDownList)e.Row.FindControl("dropCobranca");
    
                    if (dropTipo != null)
                    {
                        dropTipo.DataSource = Enum.GetNames(typeof(tipo));
                        dropTipo.DataBind();
                    }
                    if (dropUrgenciaEntrega != null)
                    {
                        dropUrgenciaEntrega.DataSource = Enum.GetNames(typeof(escolha));
                        dropUrgenciaEntrega.DataBind();
                    }
                    if (dropAutorizacao != null)
                    {
                        dropAutorizacao.DataSource = Enum.GetNames(typeof(escolha));
                        dropAutorizacao.DataBind();
                    }
                    if (dropCobranca != null)
                    {
                        dropCobranca.DataSource = Enum.GetNames(typeof(cobranca));
                        dropCobranca.DataBind();
                    }
                    if (dropCliente != null)
                    {
                        dropCliente.DataSource = sys_clientesBLL.ListarBLL();
                        dropCliente.DataBind();
                    }
                }
    
                if (e.Row.RowType == DataControlRowType.Footer)
                {
                    DropDownList dropNewTipo = (DropDownList)e.Row.FindControl("dropNewTipo");
                    dropNewTipo.DataSource = Enum.GetNames(typeof(tipo));
                    dropNewTipo.DataBind();
                    dropNewTipo.Items.Insert(0, "--Selecione--");
                    DropDownList dropNewUrgenciaEntrega = (DropDownList)e.Row.FindControl("dropNewUrgenciaEntrega");
                    dropNewUrgenciaEntrega.DataSource = Enum.GetNames(typeof(escolha));
                    dropNewUrgenciaEntrega.DataBind();
                    dropNewUrgenciaEntrega.Items.Insert(0, "--Selecione--");
                    DropDownList dropNewAutorizacao = (DropDownList)e.Row.FindControl("dropNewAutorizacao");
                    dropNewAutorizacao.DataSource = Enum.GetNames(typeof(escolha));
                    dropNewAutorizacao.DataBind();
                    dropNewAutorizacao.Items.Insert(0, "--Selecione--");
                    DropDownList dropNewCobranca = (DropDownList)e.Row.FindControl("dropNewCobranca");
                    dropNewCobranca.DataSource = Enum.GetNames(typeof(cobranca));
                    dropNewCobranca.DataBind();
                    dropNewCobranca.Items.Insert(0, "--Selecione--");
                    TextBox txtNewValAut = (TextBox)e.Row.FindControl("txtNewValAut");
                    TextBox txtNewNumAut = (TextBox)e.Row.FindControl("txtNewNumAut");
                    txtNewNumAut.Enabled = false;
                    txtNewValAut.Enabled = false;
    
                }
            }
            protected void gdvAgendamento_PageIndexChanging(object sender, GridViewPageEventArgs e)
            {
                try
                {
                    gdvAgendamento.DataSource = sys_locacoesBLL.ListarBLL("agendada");
                    gdvAgendamento.PageIndex = e.NewPageIndex;
                    gdvAgendamento.DataBind();
                }
                catch (Exception erro)
                {
                    throw erro;
                }
            }
            protected void dropCliente_TextChanged(object sender, EventArgs e)
            {
                DropDownList dropCliente = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropCliente");
                DropDownList dropEndereco = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropEndereco");
    
                dropEndereco.Items.Clear();
                dropEndereco.Items.Insert(0, "--Selecione--");
                int idCli = Convert.ToInt16(dropCliente.SelectedValue.ToString());
    
                if (dropCliente.SelectedIndex != 0)
                {
                    dropEndereco.DataSource = sys_enderecosBLL.ListarBLL(idCli);
                    dropEndereco.DataBind();
                    dropEndereco.Items.Insert(0, "--Selecione--");
                }
                else if (dropCliente.SelectedValue == Session["idCliente"].ToString())
                {
                    dropEndereco.DataSource = sys_enderecosBLL.ListarBLL(Convert.ToInt16(dropCliente.SelectedValue.ToString()));
                    dropEndereco.DataBind();
                    dropEndereco.SelectedValue = Session["idEndereco"].ToString();
                }
            }
            protected void dropAutorizacao_TextChanged(object sender, EventArgs e)
            {
                DropDownList dropAutorizacao = (DropDownList)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("dropAutorizacao");
                TextBox txtValAut = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtValAut");
                TextBox txtNumAut = (TextBox)gdvAgendamento.Rows[gdvAgendamento.EditIndex].Cells[0].FindControl("txtNumAut");
                if (dropAutorizacao.SelectedItem.ToString() == "NÃO")
                {
                    txtNumAut.Enabled = false;
                    txtValAut.Enabled = false;
                }
                else if (dropAutorizacao.SelectedItem.ToString() == "SIM")
                {
                    txtNumAut.Enabled = true;
                    txtValAut.Enabled = true;
                }
            }
            protected void dropNewAutorizacao_TextChanged(object sender, EventArgs e)
            {
                DropDownList dropNewAutorizacao = (DropDownList)gdvAgendamento.FooterRow.FindControl("dropNewAutorizacao");
                TextBox txtNewValAut = (TextBox)gdvAgendamento.FooterRow.FindControl("txtNewValAut");
                TextBox txtNewNumAut = (TextBox)gdvAgendamento.FooterRow.FindControl("txtNewNumAut");
                if (dropNewAutorizacao.SelectedItem.ToString() == "NÃO")
                {
                    txtNewNumAut.Enabled = false;
                    txtNewValAut.Enabled = false;
                }
                else if (dropNewAutorizacao.SelectedItem.ToString() == "SIM")
                {
                    txtNewNumAut.Enabled = true;
                    txtNewValAut.Enabled = true;
                }
            }
            protected void checkListagem_CheckedChanged(object sender, EventArgs e)
            {
                sys_locacoesMDL mdlLocacao = new sys_locacoesMDL();
                CheckBox checkListagem = (CheckBox)gdvAgendamento.Rows[0].FindControl("checkListagem");
                int index = checkListagem.TabIndex;
                if (checkListagem.Checked == true)
                {
                    string script = "<script language='javascript'>window.open('listEntrega.aspx?index=" + index + "','titulijanela','channelmode=no, directories=no, height=550, left=100, location=no, menubar=no, resizable=yes, scrollbars=no,status=no, titlebar=no, toolbar=no, top=100, width=1050','_blank')</script>";
                    ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Listagem de Entrega", script, false);
                }
                else
                {
                    mdlLocacao.ID = index;
                    mdlLocacao.FUNC_ENTREGA = null;
                    mdlLocacao.LISTAGEM_ENTREGA = false;
    
                    try
                    {
                        sys_locacoesBLL.AtualizarBLL(mdlLocacao, "listagem_entrega");
                        Response.Redirect("agendamentos.aspx");
                    }
                    catch (Exception er)
                    {
                        throw er;
                    }
                }
            }
        }
    }

    agendamentos.aspx

    <%@ Page Title="" Language="C#" MasterPageFile="~/admin/Site1.Master" AutoEventWireup="true" CodeBehind="agendamentos.aspx.cs" EnableEventValidation = "false" Inherits="app.views.agendamentos" %>
    
    <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>
    
    <asp:Content ID="Content1" ContentPlaceHolderID="head" runat="server">
        <!--Requirement jQuery-->
        <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
        <!--Load Script and Stylesheet -->
        <link href="../css/jquery.simple-dtpicker.css" rel="stylesheet" />
        <link href="../css/calendar.css" rel="stylesheet" />
        <script src="../js/jquery.simple-dtpicker.js" type="text/javascript"></script>
        <script type="text/javascript">
            $(document).ready(function () {
                $(".dateTime").appendDtpicker({
                    "dateFormat": "DD/MM/YYYY hh:mm",
                    "locale": "br",
                    "showTime": true,
                    "minuteInterval": 15,
                    "firstDayOfWeek": 0
                });
            });
        </script>
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="server">
        <div style="margin-top: 150px">
            <asp:ScriptManager ID="ScriptManager1" runat="server" EnableScriptGlobalization="true" EnablePartialRendering="true"></asp:ScriptManager>
            <asp:UpdatePanel runat="server" UpdateMode="Conditional" ChildrenAsTriggers="true">
                <ContentTemplate>
                    <asp:GridView ID="gdvAgendamento" runat="server" ShowFooter="true" AutoGenerateColumns="false"
                        OnPageIndexChanging="gdvAgendamento_PageIndexChanging" OnRowCancelingEdit="gdvAgendamento_RowCancelingEdit"
                        OnRowCommand="gdvAgendamento_RowCommand" OnRowDeleting="gdvAgendamento_RowDeleting"
                        OnRowEditing="gdvAgendamento_RowEditing" OnRowUpdating="gdvAgendamento_RowUpdating"
                        OnRowDataBound="gdvAgendamento_RowDataBound" DataKeyNames="id" AllowPaging="true"
                        CssClass="mGrid"
                        AlternatingRowStyle-CssClass="alt"
                        FooterStyle-CssClass="fot"
                        Width="1550px" ViewStateMode="Enabled" EnableViewState="true">
                        <Columns>
                            <asp:TemplateField HeaderText="Código" ItemStyle-HorizontalAlign="Center">
                                <ItemTemplate>
                                    <asp:Label ID="lblCodigo" runat="server" Text='<%# Bind("id") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Previsão de Entrega" ControlStyle-Width="90px" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <input type="text" id="inputPrevEnt" runat="server" class="dateTime" name="inputPrevEnt" style="width: 105px; border-width: 1px; border-bottom-color: #d9dadd" />
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <input type="text" id="inputPrevEntrega" runat="server" class="dateTime" name="inputPrevEntrega" style="width: 105px; border-width: 1px; border-color: #d9dadd" />
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblData_ent" runat="server" Text='<%# Bind("previsao_entrega","{0:dd/MM/yyyy hh:mm}")%>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Listagem de Entrega" HeaderStyle-Width="100px" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                </EditItemTemplate>
                                <FooterTemplate>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:CheckBox ID="checkListagem" runat="server" AutoPostBack="true" Checked='<%# (Eval("listagem_entrega").ToString() == "True" ? true : false) %>' TabIndex='<%# (Eval("id").ToString() != "" ? Convert.ToInt32(Eval("id")) : 0) %>' ToolTip='<%# Eval("func_entrega") %>' OnCheckedChanged="checkListagem_CheckedChanged" />
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Tipo" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="dropTipo" runat="server" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:DropDownList ID="dropNewTipo" runat="server" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblTipo" runat="server" Text='<%# Bind("tipo") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Urgente?" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="dropUrgenciaEntrega" runat="server" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:DropDownList ID="dropNewUrgenciaEntrega" runat="server" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblUrgencia" runat="server" Text='<%# Bind("urgencia_entrega") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Cliente" HeaderStyle-Width="130px">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="dropCliente" runat="server" DataValueField="id"
                                        DataTextField="nome" Width="140px" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                    <asp:CascadingDropDown ID="cdlCountries" TargetControlID="ddlCountries" PromptText="Select Country"
                                        PromptValue="" ServicePath="ServiceCS.asmx" ServiceMethod="GetClientes" runat="server"
                                        Category="CountryId" LoadingText="Loading..." />
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:DropDownList ID="dropNewCliente" runat="server" DataValueField="id"
                                        DataTextField="nome" Width="100px" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                    <asp:CascadingDropDown ID="drpNewCliente" TargetControlID="dropNewCliente" PromptText="Selecione"
                                        PromptValue="" ServicePath="~/admin/webmethod/sys_metodos.asmx" ServiceMethod="GetClientes" runat="server"
                                        Category="id" LoadingText="Espere..." />
                                    &nbsp;
                                    <asp:ImageButton ID="imgBut8" runat="server" CausesValidation="true" CommandName="newCliente" ImageUrl="~/admin/imagens/icones/btn_adicionar.png" ToolTip="Adicionar Cliente" AlternateText="Adicionar Cliente" Width="24px" Heigh="24px" />
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblCliente" runat="server" Text='<%# Bind("nome1") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Endereço" HeaderStyle-Width="100px" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="dropEndereco" runat="server" DataValueField="id"
                                        DataTextField="endereco" Width="100px" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:DropDownList ID="dropNewEndereco" runat="server" DataValueField="id"
                                        DataTextField="endereco" Width="100px" BorderWidth="1px" BorderColor="#d9dadd">
                                    </asp:DropDownList>
                                    <asp:CascadingDropDown ID="drpNewEndereco" TargetControlID="dropNewEndereco" PromptText="Selecione"
                                        PromptValue="" ServicePath="~/admin/webmethod/sys_metodos.asmx" ServiceMethod="GetEnderecos" runat="server"
                                        Category="id" LoadingText="Espere..." ParentControlID="dropNewCliente" />
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:HyperLink ID="linkEndereco" runat="server" ToolTip='<%# Bind("endereco") %>'>[+]Endereço</asp:HyperLink>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Mapa">
                                <ItemTemplate>
                                    <asp:Label ID="lblMapa" runat="server" Text='<%# Bind("mapa") %>'></asp:Label>
                                </ItemTemplate>
                                <EditItemTemplate>
                                    <asp:Label ID="lblM" runat="server" Text=""></asp:Label>
                                </EditItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Telefone(s)" ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="90px">
                                <ItemTemplate>
                                    <asp:Label ID="lblFones" runat="server" Text='<%# Bind("fones") %>'></asp:Label>
                                </ItemTemplate>
                                <EditItemTemplate>
                                    <asp:Label ID="lblF" runat="server" Text=""></asp:Label>
                                </EditItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Cobrança" ItemStyle-Width="60px" ItemStyle-HorizontalAlign="Center">
                                <ItemTemplate>
                                    <asp:Label ID="lblCobranca" runat="server" Text='<%# Bind("cobranca") %>'></asp:Label>
                                </ItemTemplate>
                                <EditItemTemplate>
                                    <asp:DropDownList ID="dropCobranca" runat="server" BorderWidth="1px" BorderColor="#d9dadd" Width="60px"></asp:DropDownList>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:DropDownList ID="dropNewCobranca" runat="server"></asp:DropDownList>
                                </FooterTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Autorização?" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:DropDownList ID="dropAutorizacao" runat="server" AutoPostBack="true" BorderWidth="1px" BorderColor="#d9dadd" OnTextChanged="dropAutorizacao_TextChanged">
                                    </asp:DropDownList>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:DropDownList ID="dropNewAutorizacao" runat="server" AutoPostBack="true" BorderWidth="1px" BorderColor="#d9dadd" OnTextChanged="dropNewAutorizacao_TextChanged">
                                    </asp:DropDownList>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblAutorizacao" runat="server" Text='<%# Bind("autorizacao") %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Validade Autorização" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:TextBox ID="txtValAut" runat="server" Width="80px" BorderWidth="1px" BorderColor="#d9dadd"></asp:TextBox>
                                    <asp:CalendarExtender ID="CalendarExtender4" runat="server" TargetControlID="txtValAut" Format="dd/MM/yyyy">
                                    </asp:CalendarExtender>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:TextBox ID="txtNewValAut" runat="server" class="datetime" ReadOnly="true" Width="105px" Text=""></asp:TextBox>
                                    <asp:CalendarExtender ID="CalendarExtender3" runat="server" TargetControlID="txtNewValAut" Format="dd/MM/yyyy">
                                    </asp:CalendarExtender>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblValAut" runat="server" Text='<%# (Eval("autorizacao").ToString() == "NÃO" ? "--x--x--x--x--" : Eval("val_autorizacao").ToString()) %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Numero Autorização" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:TextBox ID="txtNumAut" runat="server" Width="80px" BorderWidth="1px" BorderColor="#d9dadd"></asp:TextBox>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:TextBox ID="txtNewNumAut" runat="server" Width="80px" BorderWidth="1px" BorderColor="#d9dadd"></asp:TextBox>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:Label ID="lblNumAut" runat="server" Text='<%# (Eval("autorizacao").ToString() == "NÃO" ? "--x--x--x--x--" : Eval("numero_autorizacao").ToString()) %>'></asp:Label>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Observação" ItemStyle-Width="40px" ItemStyle-HorizontalAlign="Center">
                                <EditItemTemplate>
                                    <asp:TextBox ID="txtObservacao" runat="server" BorderWidth="1px" BorderColor="#d9dadd"></asp:TextBox>
                                </EditItemTemplate>
                                <FooterTemplate>
                                    <asp:TextBox ID="txtNewObservacao" runat="server" BorderWidth="1px" BorderColor="#d9dadd"></asp:TextBox>
                                </FooterTemplate>
                                <ItemTemplate>
                                    <asp:HyperLink ID="linkObservacao" runat="server" ToolTip='<%# Bind("observacao") %>'>[+]Observação</asp:HyperLink>
                                </ItemTemplate>
                            </asp:TemplateField>
                            <asp:TemplateField HeaderText="Ação" ShowHeader="False" ItemStyle-Width="115px">
                                <EditItemTemplate>
                                    <asp:ImageButton ID="imgBut7" runat="server" CausesValidation="true" CommandName="Update" ImageUrl="~/admin/imagens/icones/btn_ok.png" ToolTip="Atualiza Registro" Width="24px" Heigh="24px" OnClientClick="return confirm('Deseja realmente atualizar esse registro?');" />&nbsp;
                                    <asp:ImageButton ID="imgBut6" runat="server" CausesValidation="true" CommandName="Cancel" ImageUrl="~/admin/imagens/icones/btn_cancelar.png" ToolTip="Cancela Edição" Width="24px" Heigh="24px" />
                                </EditItemTemplate>
                                <ItemTemplate>
                                    <asp:ImageButton ID="imgBut1" runat="server" CausesValidation="true" CommandName="Edit" ImageUrl="~/admin/imagens/icones/btn_editar.png" ToolTip="Edita Registro" Width="24px" Height="24px" />&nbsp;
                            <asp:ImageButton ID="imgBut2" runat="server" CausesValidation="true" CommandName="Delete" ImageUrl="~/admin/imagens/icones/btn_excluir.png" ToolTip="Deletar Registro" Width="24px" Height="24px" OnClientClick="return confirm('Deseja realmente excluir esse registro?');" />&nbsp;
                            <asp:ImageButton ID="imgBut3" runat="server" CausesValidation="true" CommandName="Efetive" ImageUrl="~/admin/imagens/icones/btn_salvar.png" ToolTip="Efetivar Registro" Width="24px" Heigh="24px" OnClientClick="return confirm('Deseja realmente Efetivar esse registro?');" />&nbsp;
                            <asp:ImageButton ID="imgBut4" runat="server" CausesValidation="true" CommandName="Anular" ImageUrl="~/admin/imagens/icones/btn_cancelar.png" ToolTip="Anular Registro" Width="24px" Heigh="24px" OnClientClick="return confirm('Deseja realmente Anular esse registro?');" />
                                </ItemTemplate>
                                <FooterTemplate>
                                    <asp:ImageButton ID="imgBut5" runat="server" CausesValidation="true" CommandName="Insert" ImageUrl="~/admin/imagens/icones/btn_ok.png" ToolTip="Adicionar Registro" AlternateText="Adicionar Registro" Width="24px" Heigh="24px" />
                                </FooterTemplate>
                            </asp:TemplateField>
                        </Columns>
                    </asp:GridView>
                </ContentTemplate>
            </asp:UpdatePanel>
        </div>
    </asp:Content>
    


    Se não conseguir vencer pelo talento, vença pelo esforço!

    sábado, 28 de setembro de 2013 05:07

Respostas

  • Ola, boa noite.

    Vou tentar dar uma dica boba, tente preencher a propriedade EmptyDataText da sua gridview para ver se funciona.

    ;) veja se te ajuda.


    Altieri Pereira http://altieripereira.blogspot.com/

    • Marcado como Resposta Giovani Cr segunda-feira, 7 de outubro de 2013 17:53
    domingo, 29 de setembro de 2013 06:56