Как запустить прямое событие при редактировании строк в gridpanel в ext.net

я использую VB.net с ext.net (версия 1.6).

у меня есть Gridpanel, где я могу дважды щелкнуть строку, чтобы отредактировать ее. Я могу успешно редактировать его, но мне нужно, чтобы прямое событие вызывалось всякий раз, когда я заканчиваю редактирование (чтобы обновить строку в моей базе данных).

Я старался :

   <ext:Column ColumnID="Name" dataindex="Name"   Header="Field" Width="210" >
   <Editor>    
   <ext:TextField ID="TextField00" runat="server"  />                     
   </Editor>   
   </ext:Column>  

и вне столбца:

      <DirectEvents>
      <AfterEdit OnEvent="UpdateFieldValue"></AfterEdit>
      </DirectEvents>

Спасибо


person user206621    schedule 23.05.2013    source источник
comment
Итак, UpdateFieldValue не вызывается?   -  person Daniil Veriga    schedule 23.05.2013
comment
обратите внимание, что я помещаю directEvent вне ColumnModel.. нет afterEdit в directEvent внутри столбца   -  person user206621    schedule 23.05.2013
comment
Хорошо, я публикую образец, где это работает.   -  person Daniil Veriga    schedule 24.05.2013


Ответы (1)


В этом примере это работает.

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

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

<script runat="server">
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!X.IsAjaxRequest)
        {
            Store store = this.GridPanel1.GetStore();
            store.DataSource = new object[] 
            { 
                new object[] { "test1" },
                new object[] { "test2" },
                new object[] { "test3" }
            };
            store.DataBind();
        }
    }

    protected void GridPanel_AfterEdit(object sender, DirectEventArgs e)
    {
        X.Msg.Alert("GridPanel_AfterEdit", "Hello from Server!").Show();
    }
</script>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Ext.NET Example</title>
</head>
<body>
    <form runat="server">
        <ext:ResourceManager runat="server" />
        <ext:GridPanel ID="GridPanel1" runat="server" AutoHeight="true">
            <Store>
                <ext:Store runat="server">
                    <Reader>
                        <ext:ArrayReader>
                            <Fields>
                                <ext:RecordField Name="test" />
                            </Fields>
                        </ext:ArrayReader>
                    </Reader>
                </ext:Store>
            </Store>
            <ColumnModel runat="server">
                <Columns>
                    <ext:Column Header="Test" DataIndex="test">
                        <Editor>
                            <ext:TextField runat="server" />
                        </Editor>
                    </ext:Column>
                </Columns>
            </ColumnModel>
            <DirectEvents>
                <AfterEdit OnEvent="GridPanel_AfterEdit" />
            </DirectEvents>
        </ext:GridPanel>
    </form>
</body>
</html>

Надеюсь это поможет.

person Daniil Veriga    schedule 24.05.2013
comment
Спасибо Даниил большое.. я обнаружил очень глупую ошибку благодаря вашему сообщению! я и мой друг ценим вашу инициативу!! - person user206621; 24.05.2013