C# web控件访问web表单方法
我的web表单包含一个web控件和一个asp:HiddenField。我正在尝试访问asxc.cs文件中的hiddenfield。我在aspx.cs文件中定义了一个公共get、set块。在web控件中,当我尝试调用ReportPage.TestID时,它无法识别ReportPage类。这是访问网络控制中隐藏字段的正确方式吗?如果是,我应该如何访问ReportPage类C# web控件访问web表单方法,c#,asp.net,ascx,C#,Asp.net,Ascx,我的web表单包含一个web控件和一个asp:HiddenField。我正在尝试访问asxc.cs文件中的hiddenfield。我在aspx.cs文件中定义了一个公共get、set块。在web控件中,当我尝试调用ReportPage.TestID时,它无法识别ReportPage类。这是访问网络控制中隐藏字段的正确方式吗?如果是,我应该如何访问ReportPage类 public partial class ReportPage : System.Web.UI.UserControl {
public partial class ReportPage : System.Web.UI.UserControl
{
protected void Page_Load(object sender, EventArgs e)
{
}
public int TestID
{
get
{
return Convert.ToInt32(TestIDHiddenField.Value);
}
set
{
TestIDHiddenField.Value = TestID.ToString();
}
}
}
您无法从用户控件直接访问页面控件,原因是。简言之,ASP.NET首先编译
App\u code
(其类在所有站点上都可见),然后编译用户控件(.ascx
),以及使用该控件的.aspx
页面
解决方案如下所示:
App\u code
中创建一个从Page
类继承的抽象类(MyBasePage
),并添加抽象属性(TestID
)MyBasePage
继承的页面并实现该属性.ascx.cs
castthis.Page
asMyBasePage
中,使用所需的属性你必须向我们展示你用来调用它的代码。换句话说,我们需要一个。亲爱的选民,请解释。我解释的方法很有效。