Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

brissolare

GridView + DataTable

Recommended Posts

Bom dia...tenho um gridView que populo com um databable que que desenvolvi via código

 

    DataTable tabela01 = new DataTable();
    tabela01.Columns.Add("Campo1");
    tabela01.Columns.Add("Campo2");
    tabela01.Columns.Add("Campo3");

Faço meu select e preencho o grid pelo dataTable que está sendo preenchido no while

 

        grid01.DataSource = tabela01;
        string strConexao2 = conexao;
        string sSql2 = selectinicio;
        using (MySqlConnection conn2 = new MySqlConnection(strConexao2))
        {
            MySqlDataReader r2 = null;
            MySqlCommand cmd2 = new MySqlCommand(sSql2, conn2);
            try
            {
                
               conn2.Open();
                r2 = cmd2.ExecuteReader(CommandBehavior.CloseConnection);
                while (r2.Read())
                {
                    leitura = true;
                    string 01 = r2[23].ToString();
                    string 02 = r[24].ToString();
                    ....
                    tabela01.Rows.Add(01, 02, 03);
                    grid01.DataBind();
                }

Com esse procedimento populo meu grid...agora...quero delatar linhas da datatable para nao precisar ficar fazendo consulta toda hora quando for apagar ou atualizar os registros...a opcao de deleta coloco no evendo SelectedIndexChanged:

 

tabela01.Rows[x].Delete();

 

obs: x é o numero da linha

 

dá o seguinte erro

 

There is no row at position 2.

 

Eu peguei o exemplo da microsoft: http://msdn.microsoft.com/pt-br/library/feh3ed13.aspx

 

Segue abaixo o grid:

 

 <asp:GridView ID="grid01" runat="server" CellPadding="4" 
            ForeColor="#333333" GridLines="None" Width="100%" 
            onselectedindexchanged="gridProcedimentos_SelectedIndexChanged">
            <AlternatingRowStyle BackColor="White" />
            <Columns>
              [b]  <asp:CommandField ButtonType="Image" SelectImageUrl="~/img/133.png" 
                    SelectText="" ShowSelectButton="True" />[/b]
            </Columns>
            <EditRowStyle BackColor="#2461BF" />
            <FooterStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <HeaderStyle BackColor="#507CD1" Font-Bold="True" ForeColor="White" />
            <PagerStyle BackColor="#2461BF" ForeColor="White" HorizontalAlign="Center" />
            <RowStyle BackColor="#EFF3FB" />
            <SelectedRowStyle BackColor="#D1DDF1" Font-Bold="True" ForeColor="#333333" />
            <SortedAscendingCellStyle BackColor="#F5F7FB" />
            <SortedAscendingHeaderStyle BackColor="#6D95E1" />
            <SortedDescendingCellStyle BackColor="#E9EBEF" />
            <SortedDescendingHeaderStyle BackColor="#4870BE" />
        </asp:GridView>

Compartilhar este post


Link para o post
Compartilhar em outros sites

No momento em que você deleta seu dataTable ainda existe? Ele é estatico?

 

Abraços...

 

Eu crio ele para ser acessado pela aplicação toda...ele fica na memoria

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.