Clique abaixo para nos ajudar
Login

Esqueci minha senha

Estamos no Facebook
Buscar
 
 

Resultados por:
 


Rechercher Busca avançada

Quem está conectado
17 usuários online :: Nenhum usuário registrado, Nenhum Invisível e 17 Visitantes :: 2 Motores de busca

Nenhum

[ Ver toda a lista ]


O recorde de usuários online foi de 468 em 1/3/2012, 10:43
Últimos assuntos
USAR REPORT FORM

30/12/2016, 09:06 por AJC

Pessoal bom dia,
Estou com um grande problema, já pesquisei muita coisa sobre report form, mas o …

Comentários: 2

Impressora Ticket

15/11/2016, 09:20 por clima238

Bom dia,
Por favor alguém me explique porque o código abaixo imprime no ecrã em vez do printer: …

Comentários: 2

Visite meu canal no Youtube

20/1/2017, 00:45 por ImRicoh

VFP Unlimited


Comentários: 0

Bloquear edição do ListBox

17/6/2010, 15:13 por Julio

Pessoal

Boa Tarde!

Tnho uma listbox apenas para exibir o resultado.
Preciso bloquear a listbox …

Comentários: 17

automação do mozilla e chrome

15/1/2017, 12:16 por Handerson Mildroz

Boa tarde a todos!

Sou iniciante no VFP. Preciso de ajuda, pois tenho um código que usa o …

Comentários: 0

Estatísticas
Temos 6991 usuários registrados
O último usuário registrado atende pelo nome de cpmacedo

Os nossos membros postaram um total de 8 mensagens em 3 assuntos

ASP.NET x AJAX (VB)

Ver o tópico anterior Ver o tópico seguinte Ir em baixo

Tutorial ASP.NET x AJAX (VB)

Mensagem por Marcos Guedes em 17/4/2009, 12:23

Parte 1:

1 – Configurando o MagicAjax em nossa aplicação

Pois bem. Baixe o MagicAjax e copie para a pasta de sua aplicação as pastas “bin” e “core”. Na pasta bin está o arquivo MagicAjax.dll, a biblioteca que usaremos para construir nossa aplicação, e na pasta core estão os scripts usados pelo MagicAjax.

Primeiramente, temos que definir em nossa aplicação que iremos utilizar a biblioteca do MagicAjax. Isso é feito através de algumas linhas de código no Web.config.

Então, crie um arquivo chamado Web.config e neste arquivo, digite o código abaixo:
Código:
<?xml version="1.0"?>
<configuration>
      <configSections>
            <section name="magicAjax" type="MagicAjax.Configuration.MagicAjaxSectionHandler, MagicAjax"/>
      </configSections>
      <magicAjax scriptPath="~/Core/Script" outputCompareMode="HashCode" tracing="false">
            <pageStore mode="NoStore" unloadStoredPage="false" cacheTimeout="5" maxConcurrentPages="5" maxPagesLimitAlert="false"/>
      </magicAjax>
      <system.web>
            <httpModules><add name="MagicAjax" type="MagicAjax.MagicAjaxModule, MagicAjax"/>
            </httpModules>
            <customErrors mode="Off"></customErrors></system.web></configuration>
2 – Criando o arquivo de dados

Agora, crie o arquivo XML/XSD que irá conter nossos dados, chamado “dados.xml”. Iremos usar os dados provenientes desse arquivo. Nada impede que você use um banco de dados. No arquivo dados.xml, copie o texto abaixo:
Código:
<?xml version="1.0" standalone="yes"?>
<Content xmlns="http://tempuri.org/Content.xsd">
  <xs:schema id="Content" targetNamespace="http://tempuri.org/Content.xsd" xmlns:mstns="http://tempuri.org/Content.xsd" xmlns="http://tempuri.org/Content.xsd" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:msdata="urn:schemas-microsoft-com:xml-msdata" attributeFormDefault="qualified" elementFormDefault="qualified">
    <xs:element name="Content" msdata:IsDataSet="true" msdata:Locale="en-US">
      <xs:complexType>
        <xs:choice minOccurs="0" maxOccurs="unbounded">
          <xs:element name="Lista">
            <xs:complexType>
              <xs:sequence>
                <xs:element name="ID" msdata:ReadOnly="true" msdata:AutoIncrement="true" type="xs:short" />
                <xs:element name="nome" type="xs:string" minOccurs="0" default=""/>
                <xs:element name="cidade" type="xs:string" minOccurs="0" default=""/>
                <xs:element name="email" type="xs:string" minOccurs="0" default=""/>
                <xs:element name="telefone" type="xs:string" minOccurs="0" default=""/>             
              </xs:sequence>
            </xs:complexType>
          </xs:element>
        </xs:choice>
      </xs:complexType>
    </xs:element>
  </xs:schema>
  <Lista>
    <ID>1</ID>
    <nome>Walter V. S. de Amorim</nome>
    <cidade>Barra Mansa/RJ</cidade>
    <email>nao.faca.spam@walteram.com.br</email>
    <telefone>(24)9999-0000</telefone>
  </Lista>
  <Lista>
    <ID>2</ID>
    <nome>Fulano</nome>
    <cidade>Volta Redonda/RJ</cidade>
    <email>teste@teste.com</email>
    <telefone>(21)9990-0123</telefone>
  </Lista> 
</Content>
3 – Exibindo os dados

Agora crie um arquivo chamado “default.aspx”. Essa página irá exibir os dados provenientes do arquivo XML criado, através de um DataGrid, e nos permitirá filtrar os itens.

No arquivo, copie o código abaixo:
Código:
<%@ Page Language="VB" %>
<%@ Import Namespace="System.Data" %>
<%@ Register Assembly="MagicAjax" Namespace="MagicAjax.UI.Controls" TagPrefix="ajax" %>
<script runat="server">
    Private Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles MyBase.Load
        If Not Page.IsPostBack Then CarregarDados()
    End Sub
 
    Private Sub CarregarDados()
        'Cria um dataset, e lê os dados do arquivo dados.xml.
        'Você poderia também carregar de um banco de dados, da
        'mesma forma como está acostumado.
        Dim ds As New DataSet
        ds.ReadXml(Server.MapPath("dados.xml"), XmlReadMode.ReadSchema)       
        'Filtra os dados, se houver algum texto no campo de filtro.
        ds.Tables(0).DefaultView.Ro                       

wFilter = "nome like '%" & txtFiltrar.Text & "%' or cidade like '%" & txtFiltrar.Text & "%'"
        dg.DataSource = ds.Tables(0)
        dg.DataBind()     
    End Sub
 
    Private Sub dg_Command(ByVal sender As System.Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs)
        If e.CommandName.ToLower = "excluir" Then
            'Rotina responsável por excluir um ítem     
            'Pega o código do ítem
            Dim IDItem As Long = e.Item.Cells(0).Text.ToString
            'Cria um dataset, lê os dados e acha o ítem a apagar
            Dim ds As New DataSet
            ds.ReadXml(Server.MapPath("dados.xml"), XmlReadMode.ReadSchema)
            ds.Tables(0).DefaultView.RowFilter = "ID=" & IDItem
            'Se achar o ítem, apaga
            If ds.Tables(0).DefaultView.Count > 0 Then ds.Tables(0).DefaultView.Delete(0)
            'Salva o dataset no arquivo
            ds.WriteXml(Server.MapPath("dados.xml"), XmlWriteMode.WriteSchema)
            'Carrega os dados
            CarregarDados()
        ElseIf e.CommandName.ToLower = "detalhes" Then
            'Abre os detalhes do ítem escolhido
            Dim IDItem As Long = e.Item.Cells(0).Text.ToString
            MagicAjax.AjaxCallHelper.Redirect("editar.aspx?id=" & IDItem)
        End If
    End Sub
 

    Protected Sub CapturarTecla_KeyUp(ByVal sender As Object, ByVal e As MagicAjax.UI.Controls.KeyEventArgs)
        'Toda vez que uma tecla for pressionada, em qualquer controle
        'dentro deste container, este evento será carregado.
        CarregarDados()
    End Sub
</script>
 

<html>
<head runat="server"><title>Mostrando os Dados</title>
</head>
<body>
    <form id="form1" runat="server">
        <ajax:AjaxPanel ID="AjaxPanel1" runat="server">
            <!--Tudo que estiver dentro do controle AjaxPanel
                irá funcionar com os recursos do MagicAjax.-->
            <ajax:KeyClientEventWrapper ID="CapturarTecla" runat="server" OnKeyUp="CapturarTecla_KeyUp">
                <!--Dentro do AjaxPanel temos um KeyClientEventWrapper
                    que irá capturar todas as teclas digitadas.-->
                Filtrar:
                <asp:TextBox ID="txtFiltrar" runat="server"></asp:TextBox>
            </ajax:KeyClientEventWrapper>
            <!--Dentro do AjaxPanel temos também um DataGrid, que irá exibir os dados -->
            <asp:DataGrid ID="dg" runat="server" Width="520px" AutoGenerateColumns="False" OnItemCommand="dg_Command">
                <Columns>
                    <asp:BoundColumn DataField="Id" HeaderText="Cód." />
                    <asp:BoundColumn DataField="nome" HeaderText="Nome" />
                    <asp:BoundColumn DataField="cidade" HeaderText="Cidade" />                 
                    <asp:ButtonColumn ButtonType="LinkButton" Text="Ver + " CommandName="Detalhes" />
                    <asp:ButtonColumn ButtonType="LinkButton" Text="Excluir" CommandName="Excluir" />
                </Columns>
            </asp:DataGrid>
            <br />
    <a href="adicionar.aspx">
        Para Adicionar um ítem, clique aqui.
    </a>
        </ajax:AjaxPanel>     
    </form></body></html>
Confira tudo com mais detalhes no seguinte link:
http://imasters.uol.com.br/artigo/4232/ajax/ajax_com_aspnet_-_criando_uma_aplicacao_em_poucos_minutos/


Última edição por Marcos Guedes em 8/1/2010, 14:35, editado 5 vez(es)

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Tutorial Re: ASP.NET x AJAX (VB)

Mensagem por Marcos Guedes em 30/6/2009, 00:05

Parte 2:

4 – Alterando os Dados da Lista Telefônica

A próxima etapa em nosso exemplo é criar a página que irá nos possibilitar a edição dos dados. Nesta, como você verá, não há nada de extraordinário.

Crie uma página chamada “editar.aspx”, e nela cole o código abaixo.
Código:
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="System.Data" %>
<%@ Register Assembly="MagicAjax" Namespace="MagicAjax.UI.Controls" TagPrefix="ajax" %>

<script runat="server">
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs)
        'Carrega os dados do arquivo
        If Not Page.IsPostBack Then
            'Cria um dataset, e lê os dados do arquivo dados.xml.
            Dim Codigo As Long = Request.QueryString("id")
            Dim ds As New DataSet, dr As DataRow
            ds.ReadXml(Server.MapPath("dados.xml"), XmlReadMode.ReadSchema)
            'Filtra os dados
            ds.Tables(0).DefaultView.RowFilter = "id =" & Codigo.ToString
            'Se achar o item, coloca nos textboxes
            If ds.Tables(0).DefaultView.Count > 0 Then
                dr = ds.Tables(0).DefaultView.ToTable.Rows(0)
                lblCodigo.Text = dr.Item("id")
                txtNome.Text = dr.Item("nome")
                txtCidade.Text = dr.Item("cidade")
                txtEmail.Text = dr.Item("email")
                txtTelefone.Text = dr.Item("telefone")
            End If
        End If
    End Sub
 
    Protected Sub cmdSalvar_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        'Salva os dados no arquivo
        Dim Codigo As Long = Request.QueryString("id")
        Dim ds As New DataSet
        ds.ReadXml(Server.MapPath("dados.xml"), XmlReadMode.ReadSchema)
        For i As Integer = 0 To ds.Tables(0).Rows.Count - 1
            If ds.Tables(0).Rows(i).Item("id") = Codigo Then
                ds.Tables(0).Rows(i).Item("nome") = txtNome.Text.ToString
                ds.Tables(0).Rows(i).Item("cidade") = txtCidade.Text.ToString
                ds.Tables(0).Rows(i).Item("email") = txtEmail.Text.ToString
                ds.Tables(0).Rows(i).Item("telefone") = txtTelefone.Text.ToString
                ds.WriteXml(Server.MapPath("dados.xml"), XmlWriteMode.WriteSchema)
                Exit For
            End If
        Next
        'Redireciona para a página de exibição.
        'Note que usamos a função redirect própria do MagicAjax.
        'Você pode usar o habitual Response.Redirect
        MagicAjax.AjaxCallHelper.Redirect("default.aspx")
    End Sub

    Protected Sub cmdCancelar_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        'Ao cancelar, simplesmente redireciona para a página de exibição.
        MagicAjax.AjaxCallHelper.Redirect("default.aspx")
    End Sub
</script>

<html>
<head runat="server"><title>Editando os Dados</title></head>
<body>
    <form id="form1" runat="server">
        <table>
            <tr>
                <td>Código:</td>
                <td><asp:Label ID="lblCodigo" runat="server"></asp:Label></td>
            </tr>
            <tr><td>Nome:</td>
                <td><asp:TextBox ID="txtNome" runat="server" Width="245px" /></td>
            </tr>
            <tr><td>Cidade:</td>
                <td><asp:TextBox ID="txtCidade" runat="server" /></td>
            </tr>
            <tr><td>E-mail:</td>
                <td><asp:TextBox ID="txtEmail" runat="server" /></td>
            </tr>
            <tr><td>Telefone:</td>
                <td><asp:TextBox ID="txtTelefone" runat="server" Width="80px" /></td>
            </tr>
            <tr><td></td>
                <td>
                    <ajax:AjaxPanel ID="AjaxPanel1" runat="server">
                        <asp:Button ID="cmdSalvar" runat="server" OnClick="cmdSalvar_Click" Text="Salvar" />
                        <asp:Button ID="cmdCancelar" runat="server" Text="Cancelar" OnClick="cmdCancelar_Click" />
                    </ajax:AjaxPanel>                                         
                </td>                 
            </tr>
        </table>
    </form></body></html>
5 – Adicionando Dados à Lista

A última etapa em nossa pequena aplicação é criar a página onde poderemos adicionar dados.
Então, crie uma página chamada “adicionar.aspx” e cole o código abaixo:
Código:
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="System.Data" %>
<%@ Register Assembly="MagicAjax" Namespace="MagicAjax.UI.Controls" TagPrefix="ajax" %>

<script runat="server">
    Protected Sub cmdSalvar_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        'Salva os dados no arquivo
        Dim ds As New DataSet, dr As DataRow
        ds.ReadXml(Server.MapPath("dados.xml"), XmlReadMode.ReadSchema)
        dr = ds.Tables(0).NewRow
        dr.Item("nome") = txtNome.Text.ToString
        dr.Item("cidade") = txtCidade.Text.ToString
        dr.Item("email") = txtEmail.Text.ToString
        dr.Item("telefone") = txtTelefone.Text.ToString
        ds.Tables(0).Rows.Add(dr)
        ds.WriteXml(Server.MapPath("dados.xml"), XmlWriteMode.WriteSchema)
        'Redireciona para a página de exibição.
        'Note que usamos a função redirect própria do MagicAjax.
        'Você pode usar o habitual Response.Redirect
        MagicAjax.AjaxCallHelper.Redirect("default.aspx")
    End Sub

    Protected Sub cmdCancelar_Click(ByVal sender As Object, ByVal e As System.EventArgs)
        'Ao cancelar, simplesmente redireciona para a página de exibição.
        MagicAjax.AjaxCallHelper.Redirect("default.aspx")
    End Sub
</script>

<html>
<head runat="server">
    <title>Adicionando Dados</title>
</head>
<body>
    <form id="form1" runat="server">
        <table>
            <tr><td>Nome:</td>
                <td><asp:TextBox ID="txtNome" runat="server" Width="245px" /></td>
            </tr>
            <tr><td>Cidade:</td>
                <td><asp:TextBox ID="txtCidade" runat="server" /></td>
            </tr>
            <tr><td>E-mail:</td>
                <td><asp:TextBox ID="txtEmail" runat="server" /></td>
            </tr>
            <tr><td>Telefone:</td>
                <td><asp:TextBox ID="txtTelefone" runat="server" Width="80px" /></td>
            </tr>
            <tr>
                <td></td>
                <td>
                    <ajax:AjaxPanel ID="AjaxPanel1" runat="server">
                        <asp:Button ID="cmdSalvar" runat="server" OnClick="cmdSalvar_Click" Text="Salvar" />
                        <asp:Button ID="cmdCancelar" runat="server" Text="Cancelar" OnClick="cmdCancelar_Click" />
                    </ajax:AjaxPanel>                                         
                </td>                 
            </tr>
        </table>
    </form>
</body>
</html>
6 – Alterando o texto "Loading"

Conforme prometi, irei mostrar como alterar o texto “Loading”. Pois bem. Abra o arquivo “AjaxCallObject.js” (dentro da pasta core/script). Lá no final do arquivo (+- linha 1051), você verá o código:
Código:
function CreateWaitElement() {
    var elem = document.getElementById('__AjaxCall_Wait');
    if (!elem) {
        elem = document.createElement("div");
        elem.id = '__AjaxCall_Wait';
        elem.style.position = 'absolute';
        elem.style.height = 17;
        elem.style.paddingLeft = "3px";
        elem.style.paddingRight = "3px";
        elem.style.fontSize = "11px";
        elem.style.fontFamily = 'Arial, Verdana, Tahoma';
        elem.style.border = "#000000 1px solid";
        elem.style.backgroundColor = "DimGray";
        elem.style.color = "#ffffff";
        elem.innerHTML = 'Loading ...';
        elem.style.visibility = 'hidden';
        document.body.insertBefore(elem, document.body.firstChild);
    }
    waitElement = elem;
}
// end wait element
Confira tudo com mais detalhes no seguinte link:
http://imasters.uol.com.br/artigo/4232/ajax/ajax_com_aspnet_-_criando_uma_aplicacao_em_poucos_minutos/

Marcos Guedes
Webmaster
Webmaster


Voltar ao Topo Ir em baixo

Ver o tópico anterior Ver o tópico seguinte Voltar ao Topo


 
Permissão deste fórum:
Você não pode responder aos tópicos neste fórum