Announcement

Collapse
No announcement yet.

CompareValidater im Gridview Footer

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • CompareValidater im Gridview Footer

    Hallo

    da es bei mir mit der Installation der Captcha-Komponente am Webserver nicht funktioniert, habe ich mir Scirpt geschrieben, wo eine kleine Rechnenaufgabe berechnet werden muss.

    Das Scirpt liegt in einer Klasse und dort wird das Ergebnis in eine Session geschrieben und die Aufgabe z.b. 3+4 wird ein eine Label geschrieben.

    Jetzt habe ich ein Gridview, mit dem Insert Formular im Footer.
    Code:
          <FooterTemplate>
                 <%--<asp:TextBox ID="txtVerlagID" Width = "40px" 
                     MaxLength = "5" runat="server"></asp:TextBox><br />--%>
                      <asp:TextBox ID="txtVerlagName" Text="Hallo" runat="server"></asp:TextBox>
                 <br />
                 <br />
                 Kommentar<br />
                 <br />
                   <asp:TextBox ID="txtVerlagAdresse" runat="server" Height="151px" 
                     TextMode="MultiLine" Width="298px"></asp:TextBox>
                 <br />
                 <br />
                 <asp:Label ID="lbl1" runat="server"></asp:Label>
                 <asp:Label ID="error" runat="server"></asp:Label>
                 <asp:CompareValidator ID="val" ControlToValidate="ca" 
                 ValueToCompare="0" ErrorMessage="Nicht" runat="server"/>     
                 
                 <asp:TextBox ID="ca" runat="server"></asp:TextBox>
                 <br />
                 <br /> 
                 <asp:ImageButton ID="btnAdd" OnClick="AddNewVerlag" ImageUrl="~/images/icon/form_green_add.png" runat="server" />
                  <%--   <asp:Button ID="btnAdd" runat="server" Text="Add" 
                     OnClick = "AddNewVerlag" />--%>
        </FooterTemplate>
    Ich habe schon mehrere Möglichkeiten versucht, den Wert der Session in valueToCompare zu setzen. Er kann den Wert nicht vergleichen. Aber die Session hat einen Wert.

    Code:
        Protected Sub GridView1_RowDataBound(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles GridView1.RowDataBound
            If e.Row.RowState = DataControlRowState.Insert Then
                Dim val As CompareValidator = New CompareValidator()
                val.ControlToValidate = "ca"
                val.Operator = ValidationCompareOperator.Equal
                val.ValueToCompare = Session("loesung")
                val.ErrorMessage = "Dies ist falsch"
            End If
        End Sub
    Was mache ich falsch?
    Ich hoffe, jemand kann mir helfen. Ich baue das jetzt zum xten Mal um. Die Validierung in einem Formular ohne Gridview funktioniert.

    lg, die Luzie!

  • #2
    das hat sich erledigt.

    ich habe im Code-Behind eine protected Function angelegt, die den Wert der Session wiedergibt.

    Code:
      Protected Function sessZufall() As String
            Return Session("loesung").ToString
        End Function
    diesen Wert dann im comparevalidatorcontrol dem valuetocompare eingefügt.

    Comment

    Working...
    X