DEH*_*DEH 2 asp.net casting ascx app-code
我有一个ascx,我想从App_Code中的类加载和转换.我无法从App_Code类开始工作,尽管我可以从aspx页面开始工作.
ASPX页面技术可以正常使用以下代码:
pc = LoadControl("enquirycapture.ascx");
((ASP.enquirycapture_ascx)pc).CustomProperty = customObject;
Run Code Online (Sandbox Code Playgroud)
(注意:我在aspx页面中有以下内容:)
<%@ Reference VirtualPath="~/enquirycapture.ascx" %>
Run Code Online (Sandbox Code Playgroud)
但是,当我尝试从App_Code类中转换控件时,它无法"看到"ascx类,因此我无法强制转换为设置自定义属性(我可以加载它,但不能转换它) .我不知道如何从App_Code类中复制<%Reference ...>的东西.任何人都知道如何从App_Code类中引用(并因此强制转换)我的ascx?谢谢.
App_Code
编译为无法引用CodeFile中的类型的单独程序集.
但是您可以将interface/base类添加到您的App_Code
文件夹中,该文件夹标识您要在usercontrol中实现的自定义属性和方法:
public class EnquiryCaptureBase : System.Web.UI.UserControl
{
public object CustomProperty { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
然后
public partial class EnquiryCapture : EnquiryCaptureBase
{
}
Run Code Online (Sandbox Code Playgroud)
最后在某处App_Code
:
pc = LoadControl("enquirycapture.ascx");
((EnquiryCaptureBase)pc).CustomProperty = customObject;
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
1720 次 |
最近记录: |