Mostrando postagens com marcador gridview. Mostrar todas as postagens
Mostrando postagens com marcador gridview. Mostrar todas as postagens

terça-feira, julho 15, 2014

Modificando o visual da paginação do GridView utilizando Bootstrap

HI,

depois de ter criando uma gambiarra das brabas utilizando o bootpag e o ajax do asp.net, usando hiden field para guardar quantidade de registros, tamanho da paginação, usando viewstate, etc. Uma loucura, hehehe.

Hoje fui tentar melhorar o código usando o ajax do jquery chamando um WebMethod no code-behind da página aspx para manipular o gridview. Só que eu descobri que não dá para acessar o GridView em um método static. Teria que criar um gridview na mão ou retornar os dados em xml e pular o gridview no retorno do evento.

Depois que eu percebi que ia ser uma trabalheira daquelas, resolvi mais uma vez pesquisar como alterar a aparência da paginação do gridview, para ficar no padrão do bootstrap. Graças a Deus, consegui achar a solução.



Achei aqui

simple script to apply bootstrap pagination style in asp.net gridview
http://stackoverflow.com/questions/22420602/simple-script-to-apply-bootstrap-pagination-style-in-asp-net-gridview

Projeto
https://github.com/issamalidev/bs.pagination.js

Blog do autor
http://blog.issamsoft.com/index.php?q=en/node/73


Fiquem na Paz!!!

segunda-feira, agosto 26, 2013

Mostrar um mapa do Google em um modal criado com Twitter Bootstrap

HI,

Decidi utilizar uma janela modal para exibir um mapa do google. O botão que aciona a janela modal fica em um GridView.

Vou colocar aqui os links que me ajudaram a criar esse recurso e o código que consegui montar.

ASP.NET: Display GridView Row Details in Modal Popup using Twitter Bootstrap
http://websitedevelopmentny.org/blog/wievblog.php?id=4673

Modals bootstrap-modal.js
http://getbootstrap.com/2.3.2/javascript.html#modals

Adding a Google Map to your website
https://developers.google.com/maps/tutorials/fundamentals/adding-a-google-map

Showing a Google Map in a modal created with Twitter Bootstrap
http://stackoverflow.com/questions/11742839/showing-a-google-map-in-a-modal-created-with-twitter-bootstrap

Meu Código

 
 

Fiquem na Paz!!!

quinta-feira, agosto 22, 2013

Utilizar variável de uma classe de sessão no parâmetro do GridView

HI,

Utilizar um sessão como parâmetro do GridView é moleza, o próprio asp.net cuida disso, de pegar o valor armazenado na session. Mas, e quando você implementa uma classe de sessão e precisa utilizar uma propriedade no parâmetro, como é que faz? Fiz essa pergunta ao google ontem.

Achei a resposta aqui:

Custom Parameters for 'SelectParameters' collection using Object Data Source
http://forums.asp.net/t/1209030.aspx/1


Create a parameter with its source set to none (in the designer)
        
       
        < SelectParameters >
            < asp:Parameter Name="userId" Type="Int32" />
        </ SelectParameters >           
       
       


and in the code you assing the values to the selectParameter with

ObjectDataSource1.SelectParameters["userId"].DefaultValue = SessionManager.StoredNameValue;



Fiquem na Paz!!!

sexta-feira, junho 07, 2013

Desabilitar a opção de Selecionar do GridView de acordo com uma condição no Asp.Net

HI,

Eu poderia ter tratado a ação ao selecionar a linha do gridview e verificar se teria permissão pra ação, mas isso acarreta uma chamada ao servidor. Então procurei uma maneira de desabilitar a opção de selecionar do gridview caso o usuário não tivesse permissão de realizar a ação.

Exemplo

protected void gdvTurmas_RowDataBound(object sender, GridViewRowEventArgs e)
{
  if (e.Row.RowType == DataControlRowType.DataRow)
  {               
    string status = ((DataRowView)e.Row.DataItem)["STATUS"].ToString();
    if (status == "T")
     {
        e.Row.Cells[e.Row.RowIndex].Enabled = false;
      }
   }
}

Resultado


Achei aqui

How to disable a control in command field control in gridview
http://stackoverflow.com/a/7188143


Fiquem na Paz!!!

quinta-feira, setembro 20, 2012

Selecionar a linha do GridView ao clicar no Asp.Net

HI,

Antes eu usava o recurso padrão do GridView, o de habilitá-lo para ser selecionável. Com essa opção ativa é exibido um comando para selecionar a linha. Mas dessa vez eu queria selecionar a linha do grid ao clicar nela, sem precisar desse recurso ativo.

Achei essa solução

Select a row in an asp:GridView without using a Select Command
http://www.geekzilla.co.uk/View9FC28EE6-ACB0-4F51-BFE4-38B0B10134D5.htm


Tranquilo. Estava indo tudo muito bem até eu resolver adicionar duas colunas, uma para editar e outra para excluir o registro. Ao tentar selecionar uma linha pela segunda vez dava um erro de _doPostBack não definido.

Pois bem, depois de um certo tempo procurando, madrugada, já tava pensando em voltar ao modo tradicional de selecionar a linha. Mas graças a Deus consegui achar uma solução.

Select GridView Row Without Postback OnClick Of Cell JavaScript
http://csharpdotnetfreak.blogspot.com/2012/08/select-gridview-row-onclick-of-cell-javascript.html


Agora tá tudo beleza. Esse é o meu grid.




Lembrem-se: O segredo é a palavra chave.

Fiquem na Paz!!!

terça-feira, setembro 04, 2012

Obter o valor de um campo no RowCommand do GridView

HI,

Se tiver outra maneira eu desconheço.

Obter o valor de um campo da query no RowDataBound é tranquilo, mas eu precisei de valores que não aparecem no gridview quando uma linha é selecionada.

No GridView faço assim:
string cod_associado = ((DataRowView)e.Row.DataItem)["COD_ASSOCIADO"].ToString();

Vi que existe a propriedade DataKeyNames no gridview e fui pesquisar no google como utilizá-lo.

Achei essa páginas

ASP .NET - Manutenção de dados com GridView e Ajax
http://www.macoratti.net/11/09/aspn_gdvm.htm

GridViewCommandEventArgs
http://forums.asp.net/t/1033685.aspx

Get DataKey values in GridView RowCommand
http://stackoverflow.com/questions/2818203/get-datakey-values-in-gridview-rowcommand


Consegui montar esse código


protected void gdvTurmas_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            if (e.CommandName == "Select")
            {
                GridViewRow row = gdvTurmas.Rows[Convert.ToInt32(e.CommandArgument)];

                string cod_associado = gdvTurmas.DataKeys[row.RowIndex].Values[0].ToString();

                Session["CODASSOC"] = cod_associado;
            }
        }



Se for pra pegar um valor que tá visível no grid, no evento RowCommand, é assim:
row.Cells[4].Text


Fiquem na Paz!!!

sexta-feira, junho 10, 2011

Trabalhando com o ModalPopup do Ajax Asp.Net

HI,

Não pretendo nesse post ensinar a implementar um dialogo modal no asp.net. Vou colocar aqui todo o material que me ajudou a deixar o meu dialogo funcional, do jeito que eu queria.

Minha necessidade: Uma tela de pequisa, que jogasse a descrição do item desejado em um textbox da página. Usei o ModalPopupExtender e no panel coloquei um textbox para o usuário digitar o termo, um botão para acionar a pesquisa, um gridview para listar o resultado e um botão para fechar o dialogo.

Problemas que encontrei: Ao clicar no botão de Pesquisar, a dialogo fechava. Na paginação, dava erro ao tentar ir para outra página no gridview. Ao entrar novamente no dialogo, os resultados da pesquisa ainda estavam no gridview.


Sites que usei para elaborar meu dialogo modal de pesquisa.

Para implementar o dialogo:

ModalPopup Demonstration

Working with ModalPopup Ajax Control

Using the ASP.NET AJAX ModalPopup in an ASP.NET 3.5 application


Evitando que a tela se feche:


Por exemplo, no botão de Pesquisar, coloquei esse código para evitar que a tela desaparecesse
MyModalPopoupExtender.Show()


Para resolver o problema do pageindexchanging:


analisem esse código

protected void StudentLookupGridView_PageIndexChanging(object sender,GridViewPageEventArgs e)

{

// Recapture the current StudentCollection.

StudentLookupGridView.DataSource =

(StudentCollection)Session["LookupStudentCollection"];

// Set to the “new page”.

StudentLookupGridView.PageIndex = e.NewPageIndex;

// Rebind the data.

StudentLookupGridView.DataBind();

}

outro link, ModalPopupExtender and GridView paging problem


Para limpar o resultado da pesquisa:


GridView1.DataSource = null;
GridView1.DataBind();


Para resetar o SelectedIndex e o PageIndex:

GridView1.SelectedIndex = -1;
GridView1.PageIndex = 0;

Usei a opção AutoGenerateSelectButton do gridview para o usuário clicar e indicar o item que ele deseja escolher. Caso não se faça isso, em uma nova busca vai mostrar selecionado no gridview um item qualquer da mesma posiçao do item seleiconado anteriomente. E também vai indicar no contador de paginação a última página clicada.

Coloquei esses códigos no botão de pesquisar, depois de setar o datasource com o resultado da pesquisa.


Definindo o focus de um componente ao abrir o modal dialog

Usei essa solução. Funcionou perfeitamente.

ASP.NET: Setting Focus in Modal Dialogs


Executando a pesquisa ao pressionar ENTER

Definindo a propriedade DefaultButton do panel, funciona. Mas eu quis utilizar o ENTER também para confirmar a linha selecionada, caso o usuário quisesse usar o TAB para navegar pelas linhas do gridview.

Usei uma função no TextBox da pesquisa, para acionar um cliquei no portão de Pesquisa

Achei aqui




Pronto!!!! Foi tudo que achei em dois dias de trabalho para criar a minha tela de pesquisa. Graças a Deus, tá tudo blz. Agora vou trabalhar no layout.

Ficou assim:



Espero que possa ajudar

Fiquem na Paz!!!!