none
Asp-Net Webformular (VB.net) - Label mit Texbox (TextChange-Ereignis) und berechnung mit Ausgabe in Label(Ausgabe) nur mit 1 Zeile Funktionell RRS feed

  • Frage

  • Hallo Zusammen,

    ich bin "wieder neu" im Erstellen von Websites mit Asp-Net. Hatte vor vielen Jahren eine ausführliche Seite erstellt. Damals war Asp.Net noch sehr jung.

    Mein Problem. Ich erstelle eine Webform-Seite.

    Erste Zeile : ein Label, gefolgt von einer Textbox dann kommt ein Label mit ausgabe der Berechnung aus der Textboxeingabe (TextChange-Ereignis) Code_Behind.

    Mit einer Zeile funktioniert die Berechnung nach eingabe und Enter perfekt. Die Ausgabe erscheint korrekt im Ausgabelabel.

    Sobald ich eine 2. Zeile mit der nächsten Reihenfolge erstelle passiert nichts. Egal ob ich in der ersten Zeile etwas eingabe und enter drücke oder in der 2. Zeile. Einhaltepunkt . Es wird kein Ereignis ausgelöst (Jedenfalls nicht erkennbar). Haltepunkte bleiben ebenfalls ohne Resultat. Es tut sich einfach überhaupt nichts.

    Ich habe dies mit getrennten "Div"-Vereichen versucht, mit Anlage jedes Elements durch neues Drag an Drop. Mit Kopieren der Elemente und einfügen.

    Mittlerweile 10 verschiedene Projekte angelegt. Auch die Projekte mit den Denoseiten.

    Egal wie ich es versuche. Immer funktioniert alles bei einer Zeile. Sobald eine 2. Zeile eingefügt/erstellt wird passiert nichts mehr.

    Ich habe mit diversen API's gearbeitet 4,62 - 4,72 - 8 - Immer dasselbe Resultat.

    Ich finde im Netzt keine Antwort. Mein ASP-Net Buch aus 2013 hat auch keine Antwort.

    Wenn der erste Codeblock alleine steht (4 Zeilen = 1 Zeile Webseite) funktioniert die Ausführung des Codeblocks (1. Bild)

    Wenn wie im Bild der 2. Codeblock in der Webform Seite steht passiert nichts mehr.

    Wird der 2. Codeblock (Oder weitere Codeblöcke) wieder entfernt klappt wieder alles

    Danke für eure Hilfe



    • Bearbeitet lothar-alb Sonntag, 24. Juli 2022 08:19
    • Bearbeitet Stefan FalzModerator Sonntag, 24. Juli 2022 10:39 Codeformatierung nochmals entfernt, da diese die Lesbarkeit erheblich verschlechtert. Bitte nicht nochmal mit der komischen Formatierung einfügen. Danke.
    Sonntag, 24. Juli 2022 07:38

Antworten

  • Hi,

    man sieht leider den Wert bei Inherits="..." nicht ganz. Aber da ich mal davon ausgehe, dass da am Ende nicht _default steht, passt dein Klassenname ggfs. nicht.

    Hier ein Beispiel, das funktioniert.

    <%@ Page Language="VB" MasterPageFile="~/Masterpages/Masterseite.master" AutoEventWireup="false" CodeFile="Lothar1.aspx.vb" Inherits="Lothar1" %>
    
    <asp:Content ID="Body" runat="server" ContentPlaceHolderID="ContentPlaceHolder1">
        <div>
            Block 1
            <asp:TextBox ID="TextBox1" runat="server" />
            <asp:Label ID="Output1" runat="server" />
        </div>
        <div>
            Block 2
            <asp:TextBox ID="TextBox2" runat="server" />
            <asp:Label ID="Output2" runat="server" />
        </div>
    </asp:Content>

    Der Code dazu:

    Public Partial Class Lothar1
        Inherits System.Web.UI.Page
    
        Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
            Output1.Text = "TextBox1_TextChanged " & DateTime.Now.ToString( "dd.MM.yyyy HH:mm:ss" )
        End Sub
    
        Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles TextBox2.TextChanged
            Output2.Text = "TextBox2_TextChanged " & DateTime.Now.ToString( "dd.MM.yyyy HH:mm:ss" )
        End Sub
    End Class

    Du musst das bei dir noch ggfs. noch auf CodeBehind umstellen, mein Testprojekt braucht an der Stelle CodeFile (in der .aspx)


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
    https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport

    Sonntag, 24. Juli 2022 10:37
    Moderator

Alle Antworten

  • Hallo Lothar,

    wärst Du so nett und würdest die Textformatierung entfernen oder zumindest so ändern, dass nicht jede Textzeile mit einem leichten Hintergrund versehen ist? Das verschlechtert die Lesbarkeit doch immens.

    Ich hatte das eben schon mal korrigiert, das hast Du leider wieder rückgängig gemacht.

    ---

    Poste bitte auch deinen Code über den Code Buitton (zweites Icon von rechts in der Icon Leiste des Editors) und nicht als Grafik. Dann kann man sich den Text rauskopieren.

    Vielen Dank im Voraus.


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
    https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport



    Sonntag, 24. Juli 2022 08:42
    Moderator
  • Hi,

    man sieht leider den Wert bei Inherits="..." nicht ganz. Aber da ich mal davon ausgehe, dass da am Ende nicht _default steht, passt dein Klassenname ggfs. nicht.

    Hier ein Beispiel, das funktioniert.

    <%@ Page Language="VB" MasterPageFile="~/Masterpages/Masterseite.master" AutoEventWireup="false" CodeFile="Lothar1.aspx.vb" Inherits="Lothar1" %>
    
    <asp:Content ID="Body" runat="server" ContentPlaceHolderID="ContentPlaceHolder1">
        <div>
            Block 1
            <asp:TextBox ID="TextBox1" runat="server" />
            <asp:Label ID="Output1" runat="server" />
        </div>
        <div>
            Block 2
            <asp:TextBox ID="TextBox2" runat="server" />
            <asp:Label ID="Output2" runat="server" />
        </div>
    </asp:Content>

    Der Code dazu:

    Public Partial Class Lothar1
        Inherits System.Web.UI.Page
    
        Private Sub TextBox1_TextChanged(sender As Object, e As EventArgs) Handles TextBox1.TextChanged
            Output1.Text = "TextBox1_TextChanged " & DateTime.Now.ToString( "dd.MM.yyyy HH:mm:ss" )
        End Sub
    
        Private Sub TextBox2_TextChanged(sender As Object, e As EventArgs) Handles TextBox2.TextChanged
            Output2.Text = "TextBox2_TextChanged " & DateTime.Now.ToString( "dd.MM.yyyy HH:mm:ss" )
        End Sub
    End Class

    Du musst das bei dir noch ggfs. noch auf CodeBehind umstellen, mein Testprojekt braucht an der Stelle CodeFile (in der .aspx)


    Gruß, Stefan
    Microsoft MVP - Visual Developer ASP/ASP.NET (2001-2018)
    https://www.asp-solutions.de/ - IT Beratung, Softwareentwicklung, Remotesupport

    Sonntag, 24. Juli 2022 10:37
    Moderator