背後
マークアップ
<ext:Button
ID="Button1"
runat="server"
Text="Click Me"
OnDirectClick="ButtonClick" />
コードあなたの元のコードサンプルと夫婦の問題があります。
- が
EventArgs
パラメータButtonClick
のメソッドはDirectEventArgs
である必要があります。
<ext:Button>
インスタンスで設定されたOnClick
プロパティの名前をOnDirectClick
に変更する必要があります。
DirectEvent
ハンドラを使用してサーバー側のメソッドを呼び出すか、DirectMethod
を手動で呼び出すことができます。両方とも同様の方法で、AJAXリクエストをページに戻すことで機能します。
次のサンプルは、DirectEvent
とDirectMethod
の両方のオプションを示しています。
例
<%@ 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>
・ホープ、このことができます。
onClickとOnDirectClickの違いは何ですか? – Chakri