This is a migrated thread and some comments may be shown as answers.

Row clickable based on criteria

2 Answers 78 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Vitaly
Top achievements
Rank 1
Vitaly asked on 26 Jan 2012, 06:45 PM
Hi,
I have a RadGrid with

EnablePostBackOnRowClick

 

="true".RadGrid may contain multiple records but only based on status field = "A" or "D" row must be clickable.If status = "P" or "S" user should not be able to click that row to go to the next grid.
I used the following event to click on the row:

 

protected

 

void PrnHistoryGrid_ItemCommand(object source, GridCommandEventArgs e)

 

{

 

if (e.CommandName == "RowClick" && e.Item is GridDataItem)

 

{

 

GridEditableItem item = (GridEditableItem)e.Item;

 

 

string reqstat = item.Cells[13].Text;

 

 

string recstat = item.Cells[11].Text;

 

 

if (reqstat == "A" || reqstat == "D")

 

{

e.Item.Selected =

true;

 

 

int reqno = Convert.ToInt32(item.Cells[2].Text);

 

LoadRejCommData(reqno, recstat);

}

 

else

 

 

 

 

{

 

if (rejcommPanel.Visible == true)

 

{

rejcommPanel.Visible =

false;

 

}

}

}

}


Thanks  so much for your help

2 Answers, 1 is accepted

Sort by
0
Jayesh Goyani
Top achievements
Rank 2
answered on 26 Jan 2012, 08:09 PM
Hello,
protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
       {
           if (e.Argument == "Success")
           {
               // do your logic here
           }
       }
<telerik:RadScriptManager ID="RadScriptManager1" runat="server">
    </telerik:RadScriptManager>
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" OnAjaxRequest="RadAjaxManager1_AjaxRequest">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="RadGrid1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadGrid1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="RadAjaxManager1">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="RadGrid1" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>
function RowClick(sender, eventArgs) {
              var grid = sender;
              var MasterTable = grid.get_masterTableView();
              var row = MasterTable.get_dataItems()[eventArgs.get_itemIndexHierarchical()];
              var cell = MasterTable.getCellByColumnUniqueName(row, "ID");
              // alert(cell.innerHTML);                
              // compare your value here
 
              // call below line if your requirement satisfied
              $find("<%=RadAjaxManager1.ClientID%>").ajaxRequest("Success");
          }
<telerik:RadGrid ID="RadGrid1" runat="server" AutoGenerateColumns="false" OnNeedDataSource="RadGrid1_NeedDataSource"
           AllowFilteringByColumn="true" OnItemCommand="RadGrid1_ItemCommand">
           <MasterTableView DataKeyNames="ID">
               <Columns>
                   <telerik:GridBoundColumn DataField="ID" HeaderText="ID" UniqueName="ID">
                   </telerik:GridBoundColumn>
                   <telerik:GridBoundColumn DataField="Name" HeaderText="Name" UniqueName="Name">
                   </telerik:GridBoundColumn>
               </Columns>
           </MasterTableView>
           <ClientSettings>
               <ClientEvents OnRowClick="RowClick" />
           </ClientSettings>
       </telerik:RadGrid>


Thanks,
jayesh Goyani
0
Vitaly
Top achievements
Rank 1
answered on 26 Jan 2012, 09:17 PM
Thanks for your responding.
But I already have similar logic:

<

 

telerik:RadScriptManager ID="ScriptManager1" runat="server" />

 

 

<telerik:RadAjaxManager ID="RadAjaxManager1" runat="server">

 

 

<ClientEvents OnRequestStart="onRequestStart" />

 

 

<AjaxSettings>

 

 

<telerik:AjaxSetting AjaxControlID="mainPanel">

 

 

<UpdatedControls>

 

 

<telerik:AjaxUpdatedControl ControlID="mainPanel" LoadingPanelID="RadAjaxLoadingPanel1" />

 

 

</UpdatedControls>

 

 

</telerik:AjaxSetting>

 

 

 

</AjaxSettings>

 

 

</telerik:RadAjaxManager>

 

 

<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanel1" EnableSkinTransparency ="true" runat="server">

 

 

</telerik:RadAjaxLoadingPanel>

 


Also my Radgrid is located inside panel:

<

 

asp:Panel ID="Panel4" runat="server">

 

 

<telerik:RadPanelBar ID="PrnHistoryReport" runat="server" ExpandMode="MultipleExpandedItems" Width="98%">

 

 

 

<Items>

 

 

 

<telerik:RadPanelItem Expanded="true" Text="PRINCIPAL HISTORY INFORMATION" runat="server" Selected="true" Font-Bold="false" Font-Size ="13" Font-Names ="Verdana" >

 

 

<Items>

 

 

 

<telerik:RadPanelItem Value="HistoryData" runat="server" >

 

 

 

<ItemTemplate>

 

 

<div id="exportDiv" style="position:relative; left :420px;">

 

 

<asp:Button id="ExporttoExcel1" Width="115px" CssClass="button" runat="server" Text="Export to Excel" OnClick="btnExporttoExcel1_Click" />

 

 

<asp:Button ID="ExporttoPdf1" Width="115px" CssClass="button" runat="server" Text="Export to Pdf" style="margin-left :10px;" OnClick="btnExporttoPdf1_Click" />

 

 

</div>

 

 

<div id="dataDiv" style="overflow :hidden;">

 

 

<telerik:RadGrid ID="PrnHistoryGrid" runat="server" PageSize="5"

 

 

GridLines="None" AllowPaging="true" AllowSorting="true" OnExcelMLExportRowCreated="PrnHistoryGrid_ExcelMLExportRowCreated" OnExcelMLExportStylesCreated="PrnHistoryGrid_ExcelMLExportStylesCreated" OnItemCreated="PrnHistoryGrid_ItemCreated" OnNeedDataSource="PrnHistoryGrid_NeedDataSource" OnPdfExporting="PrnHistoryGrid_PdfExporting" OnSortCommand="PrnHistoryGrid_SortCommand" OnItemCommand="PrnHistoryGrid_ItemCommand" OnItemDataBound="PrnHistoryGrid_ItemDataBound">

 

 

<ExportSettings FileName="PrnHistoryData" OpenInNewWindow="true" IgnorePaging="true" ExportOnlyData="true">

 

 

<Excel Format="ExcelML" FileExtension="xls"/>

 

 

<Pdf FontType="Subset" AllowPrinting="true" PaperSize="Letter" />

 

 

</ExportSettings>

 

 

<MasterTableView AutoGenerateColumns="false" >

 

 

 

<RowIndicatorColumn>

 

 

<HeaderStyle Width="70px" />

 

 

</RowIndicatorColumn>

 

 

<ExpandCollapseColumn>

 

 

<HeaderStyle Width="70px" />

 

 

</ExpandCollapseColumn>

 

 

 

<Columns>

 

 

<telerik:GridBoundColumn HeaderText="Req No" DataField="TRKNO" UniqueName="TRKNO" ReadOnly="True" SortExpression="TRKNO" HeaderButtonType="TextButton" >

 

 

<HeaderStyle Width="3px" />

 

 

<ItemStyle Width="3px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Job" DataField="JOB" UniqueName="JOB" ReadOnly="True" SortExpression="JOB" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="3px" />

 

 

<ItemStyle Width="3px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Pgm No" DataField="PGMNO" UniqueName="PGMNO" ReadOnly="True" SortExpression="PGMNO" HeaderButtonType="TextButton" >

 

 

<HeaderStyle Width="2px" />

 

 

<ItemStyle Width="2px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Pgm loc" DataField="PGMLOC" UniqueName="PGMLOC" ReadOnly="True" SortExpression="PGMLOC" HeaderButtonType="TextButton" >

 

 

<HeaderStyle Width="5px" />

 

 

<ItemStyle Width="5px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Service StDate" DataField="STDATE" UniqueName="STDATE" DataFormatString="{0:MM/dd/yyyy}" ReadOnly="true" SortExpression="STDATE" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="15px" />

 

 

<ItemStyle Width="15px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Service EndDate" DataField="ENDDATE" UniqueName="ENDDATE" DataFormatString="{0:MM/dd/yyyy}" ReadOnly="true" SortExpression="ENDDATE" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="15px" />

 

 

<ItemStyle Width="15px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Req Hrs" DataField="REQHRS" UniqueName="REQHRS" ReadOnly="true" SortExpression="REQHRS" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="5px" />

 

 

<ItemStyle Width="5px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Paid Hrs" DataField="YTDHRS" UniqueName="YTDHRS" ReadOnly="true" SortExpression="YTDHRS" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="5px" />

 

 

<ItemStyle Width="5px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Paid Mins" DataField="YTDMINS" UniqueName="YTDMINS" ReadOnly="true" SortExpression="YTDMINS" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="5px" />

 

 

<ItemStyle Width="5px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Rec Stat" DataField="STATUS" UniqueName="STATUS" ReadOnly="true" SortExpression="STATUS" HeaderButtonType="TextButton" >

 

 

<HeaderStyle Width="1px" />

 

 

<ItemStyle Width="1px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Req Date" DataField="SENDDATE" UniqueName="SENDDATE" DataFormatString="{0:MM/dd/yyyy}" ReadOnly="true" SortExpression="SENDDATE" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="15px" />

 

 

<ItemStyle Width="15px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Stat of Req" DataField="STATUSF" UniqueName="STATUSF" ReadOnly="true" SortExpression="STATUSF" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="1px" />

 

 

<ItemStyle Width="1px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Approved Date" DataField="APPRDATE" UniqueName="APPRDATE" DataFormatString="{0:MM/dd/yyyy}" ReadOnly="true" SortExpression="APPRDATE" HeaderButtonType="TextButton">

 

 

<HeaderStyle Width="10px" />

 

 

<ItemStyle Width="10px" />

 

 

</telerik:GridBoundColumn>

 

 

<telerik:GridBoundColumn HeaderText="Approver Id" DataField="APPRNAME" UniqueName="APPRNAME" ReadOnly="true" SortExpression="APPRNAME" HeaderButtonType="TextButton" >

 

 

<HeaderStyle Width="70px" />

 

 

<ItemStyle Width="70px" />

 

 

</telerik:GridBoundColumn>

 

 

 

</Columns>

 

 

</MasterTableView>

 

 

<ClientSettings EnableRowHoverStyle="True" EnablePostBackOnRowClick="true">

 

 

</ClientSettings>

 

 

 

 

</telerik:RadGrid>

 

 

</div>

 

 

</ItemTemplate>

 

 

</telerik:RadPanelItem>

 

 

</Items>

 

 

</telerik:RadPanelItem>

 

 

</Items>

 

 

</telerik:RadPanelBar>

 

 

 

</asp:Panel>

 



Thanks so much...
Tags
Grid
Asked by
Vitaly
Top achievements
Rank 1
Answers by
Jayesh Goyani
Top achievements
Rank 2
Vitaly
Top achievements
Rank 1
Share this question
or