【问题标题】:FindControl & Change Textbox to Integer?FindControl & 将文本框更改为整数?
【发布时间】:2016-10-15 14:08:32
【问题描述】:

我对此很陌生,FindControl 完全让我感到困惑。谁能告诉我应该用什么代码将文本框的输入:txtamount 更改为一个名为“增量”的整数。我什至找不到控件。我尝试过 Ctype、Cint LoginView1.Findcontrol 等,但没有任何乐趣。任何帮助表示赞赏。这是前端,后面是 VB 代码...

<asp:Content ID="Content1" ContentPlaceHolderID="HeadContent"Runat="Server">
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent"Runat="Server">

<div style="text-align:center;">

    <asp:LoginView ID="LoginView1" runat="server">
        <AnonymousTemplate>
            <h2>Please <asp:HyperLink ID="HyperLink2" runat="server"         NavigateUrl="~/register-account.aspx" CssClass="boldStyle">REGISTER</asp:HyperLink> or <asp:HyperLink ID="hypLogin" runat="server" CssClass="nyroModal boldStyle" NavigateUrl="~/login2.aspx?page=vipseller">LOG IN</asp:HyperLink></h2>

        </AnonymousTemplate>
        <LoggedInTemplate>
             <h1>Shop Keeper<h1>
             <h2>Enter cash amount being spent or redeemed by customer:</h2>

             <asp:TextBox ID="txtAmount" runat="server" MaxLength="15" TabIndex="8" ></asp:TextBox>
             <br><br>

             <asp:Button ID="btnSpent" runat="server" Text="Spent" TabIndex="10" CssClass="button greyShaded" onclick="AddPoints_Click" />
             <asp:Button ID="btnRedeemed" runat="server" Text="Redeem" TabIndex="10" CssClass="button greyShaded" /><br><br>
        </LoggedInTemplate>
    </asp:LoginView>
</div>
</asp:Content>

VB 代码

Protected Sub AddPoints_Click(sender As Object, e As EventArgs)
   dim increment as integer = Cint(LoginView1.FindControl("txtamount"))
   response.write(increment)

【问题讨论】:

  • 我假设您想要 TextBox 文本的整数值。您当前正在将 TextBox 本身转换为整数。

标签: asp.net vb.net findcontrol


【解决方案1】:

FindControl,顾名思义,就是试图找到一个控件,而一个控件不是可以转换成整数的东西

Dim tb As TextBox = DirectCast(LoginView1.FindControl("txtamount"), TextBox)
if tb IsNot Nothing Then
   response.write(CInt(tb.Text))

我还建议添加RangeValidator 以确保输入仅由有效数字组成。

【讨论】:

  • 非常感谢您的帮助。这给了我错误:BC30108: 'Control' is a type and cannot be used as an expression.
  • 我正在自学,现在对 VB 有一定了解,但我认为我需要先学习一些入门课程才能掌握基础知识。
  • 我的错,以C#方式声明变量。
  • 那行得通.. 你是救生员史蒂夫!非常感谢。这是我需要了解的 VB 的主要部分。虽然它有效,但对我来说仍然有点棘手,即使我知道这可能很容易:-)
猜你喜欢
  • 2011-10-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-09
  • 2022-10-15
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多