3

ASP.NET WebForms (VS 2012) を使用して新しい Web アプリケーションの作成を開始しました。プロジェクトには、TextBox を含む Login.aspx ページがあります (VS によって自動的に作成されます)。

<asp:TextBox ID="Username" runat="server"></asp:TextBox>

ここで、そのテキスト ボックスの値にアクセスする必要があり、以下を使用しています。

String username = Html.Encode(Username.Text);

ユーザー名が存在しないというエラーが表示されます。Login.Designer.cs では、TextBox は宣言されていません。

デザイナーでテキスト ボックスを選択すると、[プロパティ] ドロップダウンで次のように識別されます。

Unnamed1.LayoutTemplate.Username

これは VS2012 での私の最初のプロジェクトです。VS2008 以前ではこの問題は発生していません。ここで何か違いはありますか?

4

5 に答える 5

0

これにして

String username = Server.Html.Encode(Username.Text);
于 2013-08-27T12:12:37.243 に答える
0

まず、デザイナーを使用して asp:login コントロールをテンプレートに変換します。これは、ログインにテンプレートに <div runat="server"> が追加されている場合に機能します。

HtmlGenericControl ChooseDiv = Login1.FindControl("ChooseFireDepartment") as HtmlGenericControl;
ChooseDiv.Visible = false;

これは、同じテンプレートに追加されたドロップダウン リストで機能します。

var ddlList = Login1.FindControl("myDdlList") as DropDownList;
...
ddlList.DataBind();
于 2016-07-02T20:45:31.893 に答える
0

これを試して、

string username=Username.Text;
于 2013-08-27T11:53:35.863 に答える
0

Build -> Rebuild でこのようなエラーが修正されることがあります。

于 2013-08-27T12:16:02.643 に答える