C#,Web窗体和Visual Studio:如何从Windows窗体转换为ASP.Net Web应用程序?

时间:2017-07-29 00:20:03

标签: c# asp.net winforms web-applications

我是初学者所以请耐心等待。

我创建了一个虚拟窗体来测试一些代码。它基本上有5个文本框和一个按钮,用于将文本保存到包含该信息的字段的对象数组中。然后我将它显示在一个富文本框上。

我在一个小组工作,我的任务是处理Asp.Net应用程序的后端,而其他人则通过在他们认为合适的位置放置文本框和按钮来处理布局。

我正在尝试将此代码转换为ASP.NET版本。 我真的只需要知道ASP.NET等效的按钮事件处理程序(button_click),所以我知道在哪里调用方法textbox.Text所以我可以将代码从textbox.text更改为它的ASP.NET对应物,以及需要更改以使该应用程序工作的任何其他内容,例如指令。

我简化了代码,以便每个事件处理程序只需要调用适用的方法。

2 个答案:

答案 0 :(得分:0)

在ASP.Net网络表单中,按钮将类似于

<asp:Button runat="server" ID="btnSomeButton" OnClick="btnSomeButton_Click" Text="Login" />

用于处理此事件的C#代码将类似于

protected void btnSomeButton_Click(object sender, EventArgs e)
    {

    }

在该功能中,您可以使用textbox.Text等命令

答案 1 :(得分:0)

凯文,基本上有两种方法可以做到这一点。您可以使用visual studio的HTML设计器为您创建事件,也可以从后面的代码手动完成。

这是你使用设计师的方法:

您基本上可以将新的Button控件拖放到设计器中并覆盖其OnClick事件(一旦选择控件,它将显示在VS的属性窗口中)。然后,VS会将事件添加到后面的代码中(它是与.aspx关联的.cs文件)。你最终会得到这样的东西:

(在.aspx页面中)

<asp:Button ID="TestBtn" runat="server" OnClick="Button_Clicked" Text="Click Me" />

(覆盖设计器中的OnClick事件将在.cs文件中创建以下方法)

 protected void Button_Clicked(object sender, EventArgs e)
 {
    //Do something here 
    //Display();
 }

您可以通过将Button控件拖放到设计器中(与之前相同)以编程方式执行相同的操作。不同之处在于,您将从后面的代码而不是设计器中覆盖其OnClick事件。

(在.aspx页面中)

<asp:Button ID="TestBtn" runat="server" Text="Click Me" />

(在.cs文件中)

protected void Page_Init(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        TestBtn.Click += TestBtn_Click;
    }           
}
void TestBtn_Click(object sender, EventArgs e)
{
   //Do things here
    //Do Something()
}

请记住,第二种方法是首选,但这取决于您和您的团队。

如果您想了解有关webform事件和页面生命周期的更多信息,请参阅MSDN中的一些优秀文档

https://msdn.microsoft.com/en-us/library/6w2tb12s.aspx

https://msdn.microsoft.com/en-us/library/ms178472.aspx