Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    [ASP.net] problema con UpdateProgress, UpdatePanel e trigger

    Ho questo codice, che premendo il button carica una gridview.
    Vorrei che nell' attesa del caricamento venga visualizzata una figura.gif.
    In teoria mi funziona, ma solo una volta.
    La cosa strana � che se faccio la simulazione con un Thread, funziona sempre, ma quando lancio la routine Getdati, che mi tira su i dari, mi funziona una volta sola.

    codice HTML:
      <%@PageLanguage="vb"AutoEventWireup="false"CodeBehind="WebForm3.aspx.vb"Inherits="Web_Test_Spinner_Lorenzo.WebForm3"%>
       
      <!DOCTYPEhtml>
       
      <htmlxmlns="http://www.w3.org/1999/xhtml">
      <headrunat="server">
      <metahttp-equiv="Content-Type"content="text/html; charset=utf-8"/>
      <title></title>
      </head>
      <body>
      <formid="form1"runat="server">
      <div>
      <asp:ScriptManagerID="ScriptManager1"runat="server"></asp:ScriptManager>
       
      <asp:UpdateProgressID="UpdateProgress"runat="server"AssociatedUpdatePanelID="UpdatePanel1">
    
      <ProgressTemplate>
                      Searching....
      <divid="progresso"class="progress">
      <imgsrc="Resources\waiting2.gif"/>&nbsp;please wait...
      </div>
      </ProgressTemplate>
      </asp:UpdateProgress>
       
       
      <asp:UpdatePanelID="UpdatePanel1"runat="server"UpdateMode="Conditional">
      <ContentTemplate>
      <fieldset>
      <legend>UpdatePanel1</legend>
      <asp:LabelID="Label1"runat="server"Text="Panel initially rendered."></asp:Label>
      <br/>
      <asp:DropDownListID="DropDownList1"runat="server"AutoPostBack="True"
      OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
      <asp:ListItemValue="1">Choose</asp:ListItem>
      <asp:ListItemValue="2">Blue</asp:ListItem>
      <asp:ListItemValue="3">Green</asp:ListItem>
      </asp:DropDownList>
      <br/>
      <asp:ButtonID="Button1"runat="server"Text="Button"OnClick="Button1_Click"/>
       
      </fieldset>
      <asp:GridViewID="GridView2"runat="server"AllowPaging="false"></asp:GridView>
      </ContentTemplate>
      <Triggers>
      <asp:AsyncPostBackTriggerControlID="DropDownList1"EventName="SelectedIndexChanged"/>
      <asp:AsyncPostBackTriggerControlID="Button1"EventName="Click"/>
       
      </Triggers>
      </asp:UpdatePanel>
       
       
      </div>
      </form>
      </body>
      </html>
    codice behind:

    codice:
      ImportsSystem.Configuration
      ImportsSystem.Data
      ImportsSystem.Data.SqlClient
      ImportsSystem.Threading
      PublicClassWebForm3
      InheritsSystem.Web.UI.Page
      
      ProtectedSubPage_Load(ByVal sender AsObject, ByVal e AsSystem.EventArgs) HandlesMe.Load
      
      IfNotIsPostBackThen
      
      Else
      
      EndIf
      EndSub
      
      ProtectedSub Button1_Click(ByVal sender AsObject, ByVal e AsEventArgs)
      System.Threading.Thread.Sleep(3000)
              Label1.Text = "Page refreshed at "&DateTime.Now.ToString()
      'getdata()  FUNZIONA SOLO UNA VOLTA
    
      EndSub
      
      ProtectedSub DropDownList1_SelectedIndexChanged(ByVal sender AsObject, ByVal e AsEventArgs)
      System.Threading.Thread.Sleep(3000)
              Label1.Text = "Page refreshed with DDL at "&DateTime.Now.ToString()
      EndSub
      
      PublicSubgetdata()
      Dimconnx = ConfigurationManager.ConnectionStrings("Connessione_Mia").ConnectionString
      DimstrSQLAsString = "SELECT  top 10000 * FROM tbl_Mia_Tabella "
      Using conn AsNewSqlConnection(connx)
      Try
      UsingcmdSQLAsSqlCommand = NewSqlCommand(strSQL, conn)
      conn.Open()
      DimrstDataAsDataTable = NewDataTable()
      rstData.Load(cmdSQL.ExecuteReader())
                          GridView2.DataSource = rstData
                          GridView2.DataBind()
      EndUsing
      
      CatchessAs Exception
      MsgBox(ess.Message)
      EndTry
      EndUsing
      EndSub
      EndClass

  2. #2
    Utente di HTML.it L'avatar di supermac
    Registrato dal
    Jun 2001
    Messaggi
    1,881
    Prova a indicare nell'updatepanel che tutti i controlli child siano considerati trigger (poi non dovrebbe neanche servire dichiararli sotto)
    W la Ferari effetrenavenave!
    il computer è un somaro veloce! (neanche tanto ndr)

Tag per questa discussione

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.