EXT.Net GridPanel DblClick DirectEvent不转发列数据

时间:2014-02-18 20:04:19

标签: c# asp.net ext.net

我在我设计的网页中使用Ext.Net GridPanel。一旦这个GridPanel填充了数据,并且我点击一行,我希望有关该行的信息被转发到Ext.Net ExtraParams。目前,有一个列,其中每个行都添加了带数据的按钮。单击此按钮时,它会将记录数据传递给定义的处理程序。下面是我提到的这个列按钮的ASPX代码:

<DirectEvents>
    <Command OnEvent="GridPanel1_Command">
         <EventMask ShowMask="true" />
         <ExtraParams>
            <ext:Parameter Name="Id" Value="record.data.Id" Mode="Raw">
            </ext:Parameter>
            <ext:Parameter Name="command" Value="command" Mode="Raw">
            </ext:Parameter>
         </ExtraParams>
    </Command>
</DirectEvents>

它指向的C#处理程序:

protected void GridPanel1_Command(object sender, DirectEventArgs e)
{
        string commandName = e.ExtraParams["command"];
        string Id = e.ExtraParams["Id"];
}

此代码完美无缺。

我想现在添加一个双击处理程序,当双击一行时,它会转发相同的数据,所以我实现了以下内容:

<DirectEvents>
    <Command OnEvent="GridPanel1_Command">
         <EventMask ShowMask="true" />
         <ExtraParams>
            <ext:Parameter Name="Id" Value="record.data.Id" Mode="Raw">
            </ext:Parameter>
            <ext:Parameter Name="command" Value="command" Mode="Raw">
            </ext:Parameter>
         </ExtraParams>
    </Command>
    <DblClick OnEvent="GridPanel1_DblClick">
          <ExtraParams>
              <ext:Parameter Name="Id" Value="record.data.Id" Mode="Raw">
              </ext:Parameter>
          </ExtraParams>
    </DblClick>
</DirectEvents>

使用以下C#处理程序:

protected void GridPanel1_DblClick(object sender, DirectEventArgs e)
{
   string Id = e.ExtraParams["Id"];
}

GridPanel1_DblClick永远不会在双击行项时被触发,但是如果我删除了ext:Parameter属性,它将完全正常激活。

我需要获取点击的行数据,我的代码出了什么问题?

如果我可以提供其他任何内容,请告诉我,我是ASP.Net新手,但是C#pro ...

1 个答案:

答案 0 :(得分:0)

在我发布这个问题之前,我做了很多关于这个问题的研究,但显然还不够。我从相关的帖子中找到了答案:

How to get values from the currently selected row within a Ext.Net.GridPanel outside of the SelectionModel?

我改变了:

<DblClick OnEvent="GridPanel1_DblClick">
      <ExtraParams>
          <ext:Parameter Name="Id" Value="record.data.Id" Mode="Raw">
          </ext:Parameter>
      </ExtraParams>
</DblClick>

<RowDblClick OnEvent="GridPanel1_DblClick">
      <ExtraParams>
          <ext:Parameter Name="Id" Value="this.selModel.getSelected().data.Id" Mode="Raw">
          </ext:Parameter>
      </ExtraParams>
</RowDblClick>

行星现已对齐......