2011-11-16 102 views
1

标记上Ext.Net按钮调用ASP.net事件处理程序点击

<ext:Button ID="Button1" runat="server" Icon="ShapeSquare" Text="Submit" OnClick="GreetingBtn_Click" > 
</ext:Button> 

代码隐藏

public void GreetingBtn_Click(Object sender, EventArgs e) 
{ 
     Response.Redirect("www.google.lk"); 
} 

在这种情况下,我想能够执行ASP .net事件处理程序在Ext.net按钮上单击。如何实现这一功能?

回答

3

examples

标记

<ext:Button 
     ID="Button1" 
     runat="server" 
     Text="Click Me" 
     OnDirectClick="ButtonClick" /> 

代码背后

protected void ButtonClick(object sender, DirectEventArgs e) 
{ 
    Response.Redirect("www.google.lk"); 
}   
+0

onClick和OnDirectClick有什么区别? – Chakri

3

有与你原来的代码示例几个问题:

  1. EventArgs参数在您的ButtonClick方法应该是DirectEventArgs
  2. <ext:Button>实例上配置的OnClick属性应重命名为OnDirectClick

您可以使用DirectEvent处理程序或手动调用DirectMethod来调用服务器端Method。两者都以相似的方式通过向页面发回AJAX请求来运行。

以下示例演示了DirectEventDirectMethod选项。

<%@ Page Language="C#" %> 

<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %> 

<script runat="server"> 
    protected void Button1_Click(Object sender, DirectEventArgs e) 
    { 
     X.Msg.Notify("DirectEvent", DateTime.Now.ToLongTimeString()).Show(); 
    } 

    [DirectMethod] 
    public void DoSomething() 
    { 
     X.Msg.Notify("DirectMethod", "DoSomething was called").Show(); 
    } 
</script> 

<html> 
<head runat="server"> 
    <title>Ext.NET Example</title> 
</head> 
<body> 
    <form runat="server"> 
     <ext:ResourceManager runat="server" /> 

     <ext:Button runat="server" Text="DirectEvent"> 
      <DirectEvents> 
       <Click OnEvent="Button1_Click" /> 
      </DirectEvents> 
     </ext:Button> 

     <ext:Button runat="server" Text="DirectMethod"> 
      <Listeners> 
       <Click Handler="Ext.net.DirectMethods.DoSomething();" /> 
      </Listeners> 
     </ext:Button> 
    </form> 
</body> 
</html> 

希望这有助于。

2

在Ext.net按钮上添加属性AutoPostBack="true"

<Buttons> 
    <ext:Button ID="Button1" runat="server" Icon="ShapeSquare" AutoPostBack="true" Text="Submit" OnClick="GreetingBtn_Click" > 
    </ext:Button> 
</Buttons> 
相关问题