这是我的 ascx 代码:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="Demo.ascx.cs"
Inherits="Demo" %>
<asp:HiddenField ID="hidden" runat="server" Value="" />
aspx :
<%@ Register TagName="Hidden" TagPrefix="CRS" Src="~/Demo.ascx" %>
<div>
<CRS:Hidden ID="hid" runat="server" />
</div>
现在如何访问隐藏变量ID从ascx页面到此cs页面后端
答案 0 :(得分:3)
你的意思是实际身份证吗?或隐藏字段中的值?
您可以使用FindControl
方法
HiddenField hf = (HiddenField)this.hid.FindControl("hidden");
string theValue = hf.Value;
不确定这是否正是您所寻找的。 p>
或者,您可以在UserControl中声明一些可以直接访问的公共属性
在ascx代码中:
public string theValue { get; set; }
在aspx代码中:
string theValue = this.hid.theValue;
答案 1 :(得分:0)
要从asp.net网页访问HiddenField
内的UserControl
,您需要连接一个名为Public Property
的内容。
此代码应添加到后面的UserControl
ascx.cs代码中:
public string Value
{
get { return hidden.Value; }
set { hidden.Value = value; }
}
然后你可以在asp.net页面中编写这样的代码:
string SomeHiddenValue = hid.Value;
hid.Value = "Its a secret!";
注意:我没有编译这个,所以我不确定Value
的公共属性名是否会编译。我也不确定set { hidden.Value = value; }
中的第二个值是否需要大写。如果遇到问题,请尝试更改这两个值。