asp.net新手 - 如何从附加到按钮的事件处理程序中调用方法

时间:2012-04-24 12:23:45

标签: asp.net ajax

我的任务是完成75%完成的应用。它是使用我从未使用的三种技术创建的(我是一名工作学生):asp.net,ajax,它是用C#编写的。

这个应用程序的一个功能是html生成。我写了一个方法,我们称之为createHTML()。我已经测试它作为一个独立的,它工作正常。我现在想在实际的.net环境中运行它。当用户单击按钮btnCreate时,createHTML()方法(正在传递NameValueCollection'页面')应该获取一堆html并将其写入单独文件夹中的文本文件。

我的问题是:我该怎么做?我有一些VB .net的经验,通常我会做的是进入设计模式,双击btnCreate,它会带我到代码视图,我可以编写一个btnCreate_Click处理程序。然而,写原文的人隐藏了所有按钮,我无法弄清楚如何找到它们。我试图用一个消息框弹出手动编写一个btnCreate_Click调用,但无法触发它。

复杂化这个问题,是原始编码器在整个应用程序中编写了按钮:asp:按钮和常规HTML按钮。我应该将它作为asp按钮,还是最好使用html按钮?我理解使用一个用于客户端而另一个用于服务器端之间的区别,但是当他同时使用它们时,什么是最好的?当使用html时,是ajax进来的地方吗?

为这个问题的简单而道歉,但它让我发疯了。

编辑:

显然,我太过于罗嗦了。以下是按钮的编码方式:

<button id="createButton" class="ui-state-default ui-corner-all">Create</button>

这是原始的html按钮(再次 - 在这种情况下,我使用AJAX)? 或者我应该这样做:

<asp:Button ID="createButton" class="blah-blah-ui" PostBackUrl=".../somepage.aspx" runat="server" text="create" />?

如果我执行asp按钮(在我的AJAX级别 - 读取:none - 可能是最好的),如何在页面后面的单独代码上调用我的方法?

如果我的方法在'modify.aspx.cs'中被称为showMessage(),我该如何调用这个showMessage()方法?

编辑第二个:

根据我收到的答案,我走在正确的轨道上。问题是,onclick不起作用。我发现原始编码器藏在所有按钮的位置,所以我让它们可见。在我的创建按钮的属性窗口中,OnClick甚至不是一个选项。附近的唯一选择是OnClientClick,我假设是为了javascript?

1 个答案:

答案 0 :(得分:1)

我会说你应该坚持使用asp:Button - 只要知道这将导致页面在每次点击时重新加载,走Ajax路线避免了这一点,但可能稍微难以实现你想要的。

您将需要连接代码以处理按钮单击最简单的方法是使用像这样的OnClick属性

<asp:Button ID="createButton" class="blah-blah-ui" runat="server" Text="create" OnClick="createButton_Click" />

然后在您的代码中,您可以像这样处理事件

protected void createButton_Click(object sender, EventArgs e){}

在那个处理程序中,你可以做你想做的任何事情。