我有现有模块,其中我修改了一个包含一些HTML数据的用户控件。这在我的页面上显示得很好。
现在,我想执行Button Click Event。我的代码如下。
User Control .ascx Page
<%@ Control Language="C#" Inherits="BrownBagMarketing.Modules.Maytronics.ViewMaytronics"
AutoEventWireup="true" CodeBehind="ViewMaytronics.ascx.cs" %>
..... HTML Code....
<asp:LinkButton ID="lnkViewAll" Text="View All" runat="server" onclick="lnkViewAll_Click">
</asp:LinkButton>
---- User Control Code Behind .ascx.cs Page
namespace BrownBagMarketing.Modules.Maytronics
{
public partial class ViewMaytronics : PortalModuleBase
{
protected void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
//Response.Write("Test Event......");
}
}
protected void lnkViewAll_Click(object sender, System.EventArgs e)
{
}
}
}
即使我正在显示Response.write正在执行或不在页面加载事件中,但它没有执行。当我删除链接按钮的onclick事件时,我的其他HTML部分显示正常。
答案 0 :(得分:1)
现在我要使用以下代码。但没有得到我的确切答案。
任何人都可以解决问题,这样我就不会在页面后面的代码上编写代码。
<script runat="server">
protected void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
dlFeatures.DataSource = ClsProduct.GetAllFeatures();
dlFeatures.DataBind();
}
//Response.Write("abc123458");
}
</script>
答案 1 :(得分:0)
您要修改哪个模块?它是一个“wap”模块(Web应用程序项目),意味着它被编译成DLL?如果是这样,您需要在进行代码隐藏更改后重新编译。
答案 2 :(得分:0)
确保您的ascx引用您的代码隐藏文件 - 仔细检查名称。
ASCX示例:
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="QuizBackend.ascx.cs" Inherits="Bonitas.SalesRepQuiz.QuizBackend" %>
背后的代码
namespace Bonitas.SalesRepQuiz
{
public partial class QuizBackend : PortalModuleBase
{
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
btnYourButton.Click += btnYourButton_Click;
}
protected void btnYourButton_Click(object sender, EventArgs e)
{
try
{
// Your code
}
catch (Exception ex)
{
Exceptions.ProcessModuleLoadException(this, ex);
}
}
}
}