View Full Version : POST Thread: DirectMethod(). Why do postback the all page ?

Jun 25, 2015, 10:07 PM
Hello Forum: I'm really wondering why any Direct Method must be calling from
any part of the page make a postback. I'm adding an example from my programming.


function openVincular(Tipo) {
document.getElementById("hfEstadoVinMapa").value = Tipo;

<asp:ImageButton id="ibVincularFicha" runat="server" ImageUrl="Images/MapasGeo/09.png" BorderStyle="Outset" OnClientClick="openVincular(1); return false;" BorderWidth="1px" ToolTip="Fichas Vincular" BorderColor="White" ></asp:ImageButton>


<DirectMethod()> _
Public Sub OpenVentanaVincular(ByVal tipo As Integer)
Me.txtDescripcionFichas.Text = ""
Ext.Net.X.Js.AddScript("App.Window7.alignTo(Ext.ge tBody(), 'tl', [90, 150]); App.Window7.expand();")
End Sub

By the way, even with ext.net Button does the same results.

<Ext.Net Buttom>
<ext:Button ID="btProcesar" runat="server"
Icon="PaintbrushColor" >
<ext:ToolTip runat="server" ID="ttProcesar" Title="Procesar ClasificaciĆ³n" Width="125" TitleAlign="Center"></ext:ToolTip>
<Click OnEvent="LlenarItemsClass" Timeout="100000" Before="Ext.Msg.wait('Procesando datos...', 'Agregando clasificaciones');" Failure="Ext.Msg.hide();" >
</Ext.Net Buttom>

Please, I need any way for not make a postback. Why, I need this because I have a MapControl,
and this working with postback if one feature map is hard to load for first time, this direct
method reload again. And I trying to figure it out why ext.net makes a postback a "windows"
is not necessary for reload the whole page.

Best Regards
Interzone Developers.

Aug 21, 2015, 10:28 AM
Hi @jhuamani,

I am not sure I understand the problem. A DirectMethod should not reload a page with a hard PostBack. Does that happen?

Or maybe you mean that a form is being submitted? Yes, by default if there is a <form runat="server"> on the page, it is being submitted. To change it please use this attribute for a DirectMethod.

[DirectMethod(Type = DirectEventType.Load)]

Here is a full example.


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

<script runat="server">
[DirectMethod(Type = DirectEventType.Load)]
public void TestDirectMethod()
X.Msg.Alert("No submit", this.TextField1.Text).Show();

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

<ext:TextField ID="TextField1" runat="server" />

<ext:Button runat="server" Text="Test DirectMethod" Handler="App.direct.TestDirectMethod();" />

Aug 22, 2015, 2:38 PM
ok dani thank you very much for the contribution, I solved the problem