Telerik ASP.NET Ajax RadGrid - 如何实现双击行触发ItemCommand

 
<telerik:RadGrid runat="server" ID="listGrid" 
        GridLines="None" AutoGenerateColumns="false" Width="100%" 
        AllowFilteringByColumn="true" AllowSorting="true"
        AllowPaging="true" AllowCustomPaging="true" PageSize="20" 
        Height="900px" ClientSettings-Scrolling-AllowScroll="true"
        OnNeedDataSource="listGrid_NeedDataSource"
        OnItemCommand="listGrid_ItemCommand">
        <MasterTableView DataKeyNames="id" ClientDataKeyNames="id">
            <Columns>
                <telerik:GridBoundColumn DataField="first_name" HeaderText="First Name" />
                <telerik:GridBoundColumn DataField="last_name" HeaderText="Last Name"/>
                <telerik:GridBoundColumn DataField="user_name" HeaderText="User Name"/>
                <telerik:GridBoundColumn DataField="email" HeaderText="Email" />
                <telerik:GridBoundColumn DataField="is_admin" HeaderText="Admin" />
                <telerik:GridBoundColumn DataField="status" HeaderText="Status"/>
             </Columns>
        </MasterTableView>
        <PagerStyle Mode="NextPrevAndNumeric"></PagerStyle>
        <ClientSettings>
               <ClientEvents OnRowDblClick="gridRowDoubleClick"/>
        </ClientSettings>
    </telerik:RadGrid>
<script type="text/javascript">
               
                function gridRowDoubleClick(sender, eventArgs) {
                    var grid = sender;
                    var id = eventArgs._dataKeyValues.id;
                    var rowIndex = eventArgs.get_itemIndexHierarchical();
                    if (grid) {
                        var MasterTable = grid.get_masterTableView();
                        var Rows = MasterTable.get_dataItems();
                        for (var i = 0; i < Rows.length; i++) {
                            var row = Rows[i];
                            if (id != null && id == row.getDataKeyValue("id")) {
                                MasterTable.fireCommand("DoubleClick", id);
                                return;
                            }
                        }
                    }
                }
            </script>
In .cs:
protected void listGrid_ItemCommand(object sender, GridCommandEventArgs e)
        {
            if (e.CommandArgument != null)
            {
                Guid guid = Guid.Empty;
                if (Guid.TryParse(e.CommandArgument.ToString(), out guid))
                {
                    switch (e.CommandName.ToLower())
                    {
                        case "doubleclick":
                            OnViewDetailsClicked(guid);
                            break;
                    }
                }
            }
 
        }
参考:http://www.telerik.com/community/forums/aspnet/grid/radgrid-doubleclick-row-to-redirect-to-edit-page-not-inline-editing.aspx
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值