[英]Two-way binding of string property to TextBox in ASP.NET WebForms
我想實現一個最簡單的(所以在我看來)一個TextBox的數據綁定到頁面的一個屬性,除了數據綁定應該是雙向的,所以不是<%# Test %>
,我用<%# Bind("Test") %>
。 (實際上,目標是將單個對象作為屬性並綁定到其屬性,但讓我們從簡單的事情開始。)我正在以下簡單的代碼上對其進行測試:
TestForm.aspx
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:TextBox ID="TestTextBox" runat="server" Text='<%# Bind("Test") %>' />
</div>
</form>
</body>
</html>
TestForm.aspx.cs:
using System;
namespace WebApplication1
{
public partial class TestForm : System.Web.UI.Page
{
public string Test { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
Test = "Hello";
}
}
protected override void OnPreRender(EventArgs e)
{
base.OnPreRender(e);
DataBind();
}
}
}
調用DataBind()會導致InvalidOperationException
: 諸如Eval(),XPath()和Bind()之類的數據綁定方法只能在數據綁定控件的上下文中使用。
這種方法有什么問題?
您應該使用以下任何一種
使用上述框架,您可以檢索json對象並將其直接綁定到html元素或屬性中的任何一個。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.