C# MVC WebForms控件和事件

C# MVC WebForms控件和事件,c#,asp.net-mvc,events,controls,C#,Asp.net Mvc,Events,Controls,你好, 我知道razor不同于webforms,但我不想混合太多 我创建了ASP.NET MVC WebForms,其中包含母版页和用户控件。它工作正常,但我想知道如何在MVC Webforms中处理单击事件 代码隐藏文件仍然存在,例如default.aspx.cs,若我可以双击按钮,那个么它会创建click事件,但不起作用 我们可以在MVC中使用asp.net组件吗?代码隐藏文件呢? (示例控件:asp:label、asp:textbox、asp:hyperlink等) 谢谢 更新 这是示例代

你好,

我知道razor不同于webforms,但我不想混合太多

我创建了ASP.NET MVC WebForms,其中包含母版页和用户控件。它工作正常,但我想知道如何在MVC Webforms中处理单击事件

代码隐藏文件仍然存在,例如default.aspx.cs,若我可以双击按钮,那个么它会创建click事件,但不起作用

我们可以在MVC中使用asp.net组件吗?代码隐藏文件呢?

(示例控件:asp:label、asp:textbox、asp:hyperlink等)

谢谢

更新

这是示例代码(contact.aspx):


}没有MVC Web表单这样的东西。有ASP.NET MVC和ASP.NET Web表单。不同的技术,你不能混合使用(尽管它们可以并排使用)

MVC没有与Web表单相同的生命周期,因此不能有代码隐藏或用户控件。必须以不同的方式考虑MVC:请求被路由到控制器。控制器检查请求,根据需要对数据检索层进行任何调用,选择一个视图,并将任何必要的数据传递给该视图,该视图被呈现为HTML并发送给客户端。除非使用AJAX或类似的技术,否则后续的通信将经历相同的过程


所以,想想那个按钮会做什么。它应该发送电子邮件吗?那么它应该是一个表单提交。它是否应该收集更多数据并更新已加载页面上的DOM?那么AJAX可能更合适。

没有MVC Web表单这样的东西。有ASP.NET MVC和ASP.NET Web表单。不同的技术,你不能混合使用(尽管它们可以并排使用)

MVC没有与Web表单相同的生命周期,因此不能有代码隐藏或用户控件。必须以不同的方式考虑MVC:请求被路由到控制器。控制器检查请求,根据需要对数据检索层进行任何调用,选择一个视图,并将任何必要的数据传递给该视图,该视图被呈现为HTML并发送给客户端。除非使用AJAX或类似的技术,否则后续的通信将经历相同的过程


所以,想想那个按钮会做什么。它应该发送电子邮件吗?那么它应该是一个表单提交。它是否应该收集更多数据并更新已加载页面上的DOM?那么AJAX可能更合适。

您能提供一些代码来回答您的问题吗?MVC WebForms不存在,MVC没有用户控件。我猜你正在使用WebForms,但我不能确定。问问题的时候一定要直截了当地说出你的名字。好吧,据我所知,拖放控件在mvc webforms中也不起作用。我将删除它们。您能提供一些代码来回答您的问题吗?MVC WebForms不存在,MVC没有用户控件。我猜你正在使用WebForms,但我不能确定。问问题的时候一定要直截了当地说出你的名字。好吧,据我所知,拖放控件在mvc webforms中也不起作用。我将删除它们。是的,我想发一封电子邮件,但我不能。我创建了模型,在控制器中为它创建了动作。我几乎完成了,但如何在webforms的aspx文件中添加控件?我想我要使用@Cagatay,你不能在Web表单中使用MVC助手,也不能在MVC中使用用户控件。如果您想从MVC发送电子邮件,那么您需要一个收集电子邮件详细信息的视图,该视图应该有一个表单。它应该发布到发送电子邮件的MVC操作方法。去写你自己的。如果你陷入困境,做些调查。如果你真的陷入困境,那就问一个新问题。是的,我想发一封电子邮件,但我不想。我创建了模型,在控制器中为它创建了动作。我几乎完成了,但如何在webforms的aspx文件中添加控件?我想我要使用@Cagatay,你不能在Web表单中使用MVC助手,也不能在MVC中使用用户控件。如果您想从MVC发送电子邮件,那么您需要一个收集电子邮件详细信息的视图,该视图应该有一个表单。它应该发布到发送电子邮件的MVC操作方法。去写你自己的。如果你陷入困境,做些调查。如果你真的陷入困境,那就问一个新问题。
<div class="contact_text">
            <asp:Label ID="lbl_namesurname" runat="server" Text="<%$ Resources:contact, lbl_namesurname.Text%>"></asp:Label>
        </div>
        <div class="txt_namesurname">
            <asp:TextBox ID="txt_namesurname" runat="server" ValidationGroup="contact"></asp:TextBox>
</div>
<div><asp:Button ID="btn_send" runat="server"  CssClass="btn_send" Text="<%$ Resources:contact, btn_send.ToolTip%>" ToolTip="<%$ Resources:contact, btn_send.ToolTip%>" OnClick="btn_send_Click" ValidationGroup="contact"/></div> 
public partial class contact : ViewPage
{
    protected void Page_Load(object sender, EventArgs e)
    {

    }
    protected void btn_send_Click(object sender, EventArgs e)
    {
       //old code-behind is not working in mvc
    }
}