Как включить / отключить свойство редактирования двойного щелчка строки в Radgrid в зависимости от условия - PullRequest
0 голосов
/ 02 августа 2011

У меня есть следующий код

Javascript

function RowDblClick(sender, eventArgs)
                             {
                                window.radopen("SourceFileAdmin.aspx?SourceSystemFileId=" + eventArgs.getDataKeyValue("SourceSystemFileId"), "UserListDialog");
                            }

Код сетки Aspx

 <telerik:RadGrid ID="RadGrid" runat="server" AllowPaging="True" AllowSorting="True"
                        GridLines="None" ShowGroupPanel="True" Skin="Black" AutoGenerateColumns="False"
                        Width="100%" AllowAutomaticInserts="false" AllowAutomaticUpdates="false" PagerStyle-Mode="NumericPages"
                        OnItemInserted="GridItemInserted"
                        onitemdatabound="GridItemDataBound">
.............................................
........................................
..................................................
                            <ClientSettings>
                            <Selecting AllowRowSelect="true" />
                            <ClientEvents OnRowDblClick="RowDblClick" />
                        </ClientSettings>
</telerik:RadGrid>
<asp:Button ID="AddSrcButton" runat="server" Text="Add New" OnClientClick="return ShowInsertForm();" />

Мой актуальный вопрос - отключить или включить свойство RowDblClick в зависимости от разрешения пользователя. Это мой пример кода в файле aspx.cs, где я хочу установить разрешение на редактирование или просмотр для radgrid

this.AddSrcButton.Enabled = this.Privilige.CanModify;//the value will be true or false
 this.RadGrid.Enabled=this.Privilige.CanModify; 

// значение будет истинным или ложным, на основе этого значения я хочу включить / отключить мой rowdblclick, может ли кто-нибудь помочь выяснить, где я ошибаюсь

1 Ответ

0 голосов
/ 29 ноября 2011

Вы можете настроить двойной щелчок строки на стороне сервера программно

if(!this.Privilige.CanModify)
    RadGrid.ClientSettings.ClientEvents.OnRowDblClick = "";

Остерегайтесь, хотя, чтобы возобновить страницу, вам, вероятно, потребуется обновить все это, чтобы снова загрузить клиентский JavaScript, если выпереместить это в файл .cs

...