.net – 从页面后面的代码中调用User Control中的函数
发布时间:2020-12-16 07:42:43 所属栏目:asp.Net 来源:网络整理
导读:现在这简化了,但是这里有: 我有一个只包含一个* .ascx文件的用户控件.该控件没有代码隐藏:它只是一个包含一些函数的脚本,如下所示: %@ Control Language="VB" EnableViewState="False" ClassName="MyControlType" %script runat="server" Public Function
现在这简化了,但是这里有:
我有一个只包含一个* .ascx文件的用户控件.该控件没有代码隐藏:它只是一个包含一些函数的脚本,如下所示: <%@ Control Language="VB" EnableViewState="False" ClassName="MyControlType" %> <script runat="server"> Public Function MyFunction() As String return "CalledMyFunction!" End Function </script> 这是整个文件.我可以使用这样的标记成功地将此控件添加到aspx页面: <%@ Register Src="~/path/to/Control.ascx" TagPrefix="aaa" TagName="MyControl" %> ... <aaa:MyControl runat="server" id="MyControl1" /> 现在我要做的是从页面的代码隐藏中调用MyFunction,如下所示: Dim someString As String = MyControl1.MyFunction() 不幸的是,我做不到.相反,我得到一个编译错误,因为“’MyFunction’不是’System.Web.UI.UserControl’的成员.” 我也试过这个: Dim someString As String = DirectCast(MyControl1,MyControlType).MyFunction() 然后编译器告诉我,“未定义类型’MyControlType’.” 我玩过很多次,但我无法让它发挥作用.将MyControl1转换为更精确类型的所有努力都失败了,其他解决办法也是如此.我怀疑问题是没有代码隐藏的ascx文件无法编译到程序集,但代码隐藏需要编译到程序集,因此编译器对控件的类型感到困惑. 为了能够调用该函数,我需要做什么? [编辑] 解决方法
对我来说很奇怪.
Imports Microsoft.VisualBasic Public Class MyControlType Inherits UserControl End Class . <%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %> <%@ Register Src="~/WebUserControl.ascx" TagPrefix="aaa" TagName="MyControl" %> ... <aaa:MyControl runat="server" id="MyControl1" /> . Partial Class _Default Inherits System.Web.UI.Page Protected Overrides Sub OnLoad(ByVal e As System.EventArgs) Dim someString As String = MyControl1.MyFunction() End Sub End Class . <%@ Control Language="VB" EnableViewState="False" %> <script runat="server"> Public Function MyFunction() As String return "CalledMyFunction!" End Function </script> (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- asp.net-mvc – 带接口的ASP.NET MVC UpdateModel
- 如何在ASP.NET MVC中测试自定义模型绑定器?
- asp.net-mvc – 为什么在ASP.NET MVC 3中,默认路由不适用于
- asp.net-mvc-3 – ASP.NET AJAX.BeginForm发送多个请求
- asp.net-mvc – 在哪里将日期转换为UTC?
- ASP.Net负载均衡
- asp.net – IIS 7忽略没有文件扩展名的MapPageRoute
- asp.net-mvc – 我应该使用AsyncController在ASP.NET MVC 4
- asp.net – 如何使用数据库实现同步Memcached
- 如何将Ninject集成到ASP.NET Core 2.0 Web应用程序中?
推荐文章
站长推荐
- asp.net-mvc-3 – MVC 3脚手架可用于n层应用吗?
- asp.net-mvc – ASP.NET Core中基于活动的授权
- asp.net-mvc-3 – mvc dropdownlistfor没有标记为
- asp.net-web-api – Web API ODataResult始终序列
- 什么是Asp.net中的中等信任?
- asp.net – 谁能告诉我在Mvc视图中@using和@Mode
- asp.net-mvc-3 – 如何强制MVC查看错误以使项目编
- asp.net – jQuery的ajax正在导致FireFox的全页刷
- 十七点学完安全知识超级详细了解进程和病毒知识
- asp.net – Excel单元格对齐:例如,数值xlLeft,x
热点阅读