Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 | Suche | FAQ

Hauptmenü
myCSharp.de
» Startseite
» Forum
» Suche
» Regeln
» Wie poste ich richtig?

Mitglieder
» Liste / Suche
» Wer ist online?

Ressourcen
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Microsoft Docs

Team
» Kontakt
» Cookies
» Spenden
» Datenschutz
» Impressum

  • »
  • Community
  • |
  • Diskussionsforum
Threading UpdatePanel
ZeroQool
myCSharp.de - Member



Dabei seit:
Beiträge: 322

Themenstarter:

Threading UpdatePanel

beantworten | zitieren | melden

Hallo,

habe ein Problem mit dem Threading. Per Button rufe ich in einem Thread einen Webservice auf. Nun möchte ich gerne die Antwortzeit in einer Textbox wiedergeben, aber ohne ein Postback reagiert mein UpdatePanel nicht. Habt ihr einen guten Tip? Danke
Zitat
<asp:Content ID="Content4" ContentPlaceHolderID="CPH_Content" runat="server">
<asp:UpdatePanel runat="server" ID="UpdPnl_Benchmark" UpdateMode="Always" >
<ContentTemplate>
<div class="clearfix" style="height: 5px;">
</div>
<div id="formError" class="formErrorInnerDiv" runat="server" style="color: #E03838;
font-weight: normal;" visible="false">
</div>
<div id="formSuccess" class="formSuccessInnerDiv" visible="false" runat="server">
</div>
<div class="clearfix" style="height: 5px;">
</div>
<div style="float: left;">
<asp:Panel ID="pnl_Suche" runat="server" DefaultButton="btn_Start">
Suchbegriff:&nbsp;
<asp:TextBox ID="txtB_Suchbegriff" runat="server" MaxLength="30" Style="float: left"></asp:TextBox>
<asp:Button ID="btn_Start" runat="server" Text="Benchmark starten" OnClick="btn_Start_Click"
CssClass="butt-flat" Style="float: left; margin-left: 10px;" />
</asp:Panel>
</div>
<div class="clearfix" style="height: 15px;">
</div>
<div style="border: solid 1px black; width: 100%; height: 300px; overflow: auto;">
<asp:GridView ID="GDV_Daten" runat="server" PageSize="10" Width="900px" PagerSettings-Mode="Numeric"
AllowPaging="true" OnPageIndexChanging="GDV_Daten_PageIndexChanging">
<PagerSettings Mode="NumericFirstLast" PageButtonCount="10" FirstPageText="Erste Seite"
NextPageText="nächste Seite" PreviousPageText="vorherige Seite" LastPageText="Letzte Seite"
Position="Bottom" />
<PagerStyle HorizontalAlign="Center" />
</asp:GridView>
</div>
<div class="clearfix" style="height: 15px;">
</div>
<div>
<asp:TextBox ID="txtB_Log" runat="server" TextMode="MultiLine" ReadOnly="true" Width="950px"
Height="200px"></asp:TextBox>
</div>
<asp:UpdateProgress AssociatedUpdatePanelID="UpdPnl_Benchmark" ID="updateProgress"
runat="server" DisplayAfter="100" DynamicLayout="true">
<ProgressTemplate>
<div id="progressBackgroundFilter">
</div>
<div id="processMessage" style="text-align: center;">
<img alt="Loading" src="images/ajax-loader.gif" style="background-position: center;"
align="middle" /></div>
</ProgressTemplate>
</asp:UpdateProgress>
<triggers>
<asp:AsyncPostBackTrigger ControlID="btn_Start" />
</triggers>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>

 protected void btn_Start_Click(object sender, EventArgs e)
        {
            aTools.setMessageBox(formError, formSuccess, false, false, "", false);

            if (txtB_Suchbegriff.Text.Trim() != "")
              
                getContent_Thread();
            else
                aTools.setMessageBox(formError, formSuccess, true, false, "Bitte Suchbegriff eingeben.", false);
        }

     private void getContent_Thread()
        {
            Thread aThread = new Thread(getContent);
            aThread.Priority = ThreadPriority.Lowest;
            aThread.Start();
        }

private void getContent()
        {
            System.TimeSpan GemessendeZeit = new System.TimeSpan();
            DateTime StartZeit = DateTime.Now;
.....
   txtB_Log.Text += "Website Zugriffszeit: " + GemessendeZeit.ToString() + "\n";
}

txtB_Log wird nciht angezeigt, bzw aktualisiert
Dieser Beitrag wurde 1 mal editiert, zum letzten Mal von ZeroQool am .
private Nachricht | Beiträge des Benutzers
schaedld
myCSharp.de - Member

Avatar #avatar-2533.jpg


Dabei seit:
Beiträge: 1.433
Herkunft: Schweiz

beantworten | zitieren | melden

Das UpdatePanel hat doch zwei UpdateModes: Conditional und Always. Sieher nähere Info's hier.

UpdatePanel-Steuerelement – Einführung

UpdatePanel-Klasse

UpdatePanel-Member
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
private Nachricht | Beiträge des Benutzers
ZeroQool
myCSharp.de - Member



Dabei seit:
Beiträge: 322

Themenstarter:

beantworten | zitieren | melden

Damit habe ich mich auch schon beschäftigt. Brachte keiner Erfolge.
private Nachricht | Beiträge des Benutzers
schaedld
myCSharp.de - Member

Avatar #avatar-2533.jpg


Dabei seit:
Beiträge: 1.433
Herkunft: Schweiz

beantworten | zitieren | melden

Hmm, dann müsstest Du per Javascript in einem Intervall holen und dann das UpdatePanel manuell refreshen, oder zu verzichtest auf das UpdatePanel und machst einen Zugriff auf die DB per Javascript und einem Javascript Timer der in intervallen das Log auf ein HML schreibt.

Etwas ähnliches hab ich mal für eine zeilenweise Aktualisierung eines GridView gemacht.
Grüsse
Daniel
Space Profile
Wer nicht fragt, der nicht gewinnt
private Nachricht | Beiträge des Benutzers