Telerik Forums
UI for ASP.NET AJAX Forum
1 answer
113 views
I need to determine the row that a control is on the client side.

Anyone have an example that I can use?

Thanks
Eyup
Telerik team
 answered on 20 Mar 2015
1 answer
170 views
Dear All,

I am going mad with what looks to me as a silly thing; I get a "Selection out of range" Parameter name: value error on a page when I try to set the filter to a value that does not exist in the dropdown combo (see printscreen attached).

I am looking for a solution to avoid/catch this error. I cannot avoid people to filter for non-existing values so I need to catch this error and handle it properly but I don't know how... Can someone help ? The code of the page is as below:

<%@ Page Title="List of WoWs" Language="VB" MasterPageFile="~/wowsearch.master" AutoEventWireup="false" CodeFile="WoWlist.aspx.vb" Inherits="WoWlist" %>
 
<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
    <title>R&D Campus WoWs List</title>
</asp:Content>
<asp:Content ID="Content2" ContentPlaceHolderID="qckSwitch" Runat="Server">
    <asp:HyperLink ID="HyperLink1" runat="server" NavigateUrl="~/WoWsearch.aspx">switch to search tool</asp:HyperLink>
</asp:Content>
<asp:Content ID="Content3" ContentPlaceHolderID="cntBody" Runat="Server">
    <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
        <script type="text/javascript">
            //<![CDATA[
            var RadGrid1;
            var lnkShareFilter;
 
            lnkShareFilter = '';
 
            function GetGridObject(sender, eventArgs) {
                RadGrid1 = sender;
            }
 
            function ExportToExcel(fileName)
            {
                RadGrid1.get_masterTableView().exportToExcel(fileName);
            }
 
            //]]>
        </script>
    </telerik:RadCodeBlock>
    <telerik:RadGrid ID="RadGrid1" runat="server" AllowFilteringByColumn="True" AllowPaging="True" AllowSorting="False" CellSpacing="0"
        DataSourceID="sqlWoWList" GridLines="None" PageSize="20" EnableLinqExpressions="false" Width="100%" Height="100%">
        <ClientSettings>
            <Scrolling AllowScroll="True" UseStaticHeaders="True" />
            <ClientEvents OnGridCreated="GetGridObject"></ClientEvents>
        </ClientSettings>
        <ExportSettings ExportOnlyData="true" FileName="List of WoWs" HideStructureColumns="true" IgnorePaging="true" >
            <Excel Format="ExcelML" />
        </ExportSettings>
        <MasterTableView AutoGenerateColumns="False" DataSourceID="sqlWoWList" CommandItemDisplay="Top">
 
            <NoRecordsTemplate>
                <table width="100%" border="0" cellpadding="20" cellspacing="20">
                    <tr>
                        <td align="center">
                            <h2 style="color:Red">No WoWs or SOPs found.<br />Please change or reset the filter.</h2>
                        </td>
                    </tr>
                </table>
            </NoRecordsTemplate>
 
            <CommandItemSettings ShowExportToExcelButton="true" ShowAddNewRecordButton="false" ShowRefreshButton="false" />
            <CommandItemTemplate>
                <div id="cmdContainer" style="width: 99%; padding: 10px; text-align: right;">
                    <a href="http://teamroom.nestle.com/GLOBEISIT/PTCOrbeBPMAcademy/Induction ; Training Materials/Training and Quick Reference Materials/Campus Search QRC.pdf" target="_blank" style="padding: 5px; border: 1px solid gray; margin: 0px 5px;">
                        <img src="../App_Themes/OneRDCampus/images/question-white.png" style="border: none; vertical-align: text-bottom;" /> How To
                    </a>
                    <a href="WoWlist.aspx" style="padding: 5px; border: 1px solid gray; margin: 0px 5px;">
                        <img src="../App_Themes/OneRDCampus/images/filter_(delete)_16x16.gif" style="border: none; vertical-align: text-bottom;" /> Reset filters
                    </a>
                    <a id="lnkShareFilter" onserverclick="lnkShareFilter_ServerClick" href="#" runat="server" style="padding: 5px; border: 1px solid gray; margin: 0px 5px;">
                        <img src="../App_Themes/OneRDCampus/images/bpm_email.png" style="border: none; vertical-align: text-bottom;" /> Share filter
                    </a>
                    <a href="#" runat="server" onclick="ExportToExcel('WoWlist');" style="padding: 5px; border: 1px solid gray; margin: 0px 5px;">
                        <img src="../App_Themes/OneRDCampus/images/Export2XL.gif" style="border: none; vertical-align: text-bottom;" /> Export to excel
                    </a>
                </div>
            </CommandItemTemplate>
 
            <Columns>
                <telerik:GridTemplateColumn DataField="Title" CurrentFilterFunction="NoFilter" HeaderText="Title" HeaderTooltip="Title of the WoW or document (roll-over to display the purpose)"
                    SortExpression="Title" UniqueName="Title" FilterControlAltText="Filter Title Column" FilterListOptions="AllowAllFilters" AutoPostBackOnFilter="true"
                    ShowFilterIcon="false" FilterControlWidth="100%">
                    <ItemTemplate>
                        <asp:HyperLink ID="HyperLink2" runat="server" NavigateUrl='<%#Eval("myURL")%>' ToolTip='<%#Eval("Purpose")%>' Target='<%#Eval("URLTarget")%>'><%#Eval("Title")%></asp:HyperLink>
                    </ItemTemplate>
                </telerik:GridTemplateColumn>
                <telerik:GridBoundColumn DataField="DiagramOwner" CurrentFilterFunction="NoFilter" FilterControlAltText="Filter DiagramOwner column" HeaderText="Owner" ReadOnly="True" SortExpression="DiagramOwner" UniqueName="DiagramOwner"
                        AutoPostBackOnFilter="true" ShowFilterIcon="false" FilterControlWidth="100%" HeaderTooltip="Owner of the WoW or document">
                    <HeaderStyle Width="130px" />
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Unit" CurrentFilterFunction="NoFilter" FilterControlAltText="Filter Unit column" HeaderText="Unit"
                    SortExpression="Unit" UniqueName="Unit" HeaderTooltip="Unit that the WoW or document belongs to">
                    <HeaderStyle Width="120px" />
                    <FilterTemplate>
                        <telerik:RadComboBox ID="RadComboBoxUnit" runat="server" MaxHeight="200px" Width="110px" DropDownWidth="130px"
                            DataSourceID="sqlUnits" DataTextField="Unit" DataValueField="Unit" AppendDataBoundItems="true"
                            SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Unit").CurrentFilterValue%>'
                            OnClientSelectedIndexChanged="UnitIndexChanged">
                            <Items>
                                <telerik:RadComboBoxItem Text="All" />
                            </Items>
                        </telerik:RadComboBox>
 
                        <telerik:RadScriptBlock ID="RadScriptBlock4" runat="server">
                            <script type="text/javascript">
                                function UnitIndexChanged(sender, args) {
                                    var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
                                    tableView.filter("Unit", args.get_item().get_value(), "Contains");
                                    lnkShareFilter &= '&Unit=' & args.get_item().get_value();
                                }
                            </script>
                        </telerik:RadScriptBlock>
                    </FilterTemplate>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Type" CurrentFilterFunction="NoFilter" FilterControlAltText="Filter Type column" HeaderText="Type"
                    SortExpression="Type" UniqueName="Type" FilterControlWidth="50px" HeaderTooltip="Type of WoW or document">
                    <HeaderStyle Width="90px" />
                    <FilterTemplate>
                        <telerik:RadComboBox ID="RadComboBoxType" runat="server" Width="80px" DropDownWidth="130px"
                            DataSourceID="sqlTypes" DataTextField="Type" DataValueField="Type" AppendDataBoundItems="true"
                            SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Type").CurrentFilterValue%>'
                            OnClientSelectedIndexChanged="TypeIndexChanged">
                            <Items>
                                <telerik:RadComboBoxItem Text="All" />
                            </Items>
                        </telerik:RadComboBox>
 
                        <telerik:RadScriptBlock ID="RadScriptBlock3" runat="server">
                            <script type="text/javascript">
                                function TypeIndexChanged(sender, args) {
                                    var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
                                    tableView.filter("Type", args.get_item().get_value(), "EqualTo");
                                }
                            </script>
                        </telerik:RadScriptBlock>
                    </FilterTemplate>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Building" CurrentFilterFunction="NoFilter" FilterControlAltText="Filter by Group" HeaderText="Building/Group"
                    SortExpression="Building" UniqueName="Building" HeaderTooltip="Campus Building or other local grouping" >
                    <HeaderStyle Width="120px"  />
                    <FilterTemplate>
                        <telerik:RadComboBox ID="RadComboBoxBuilding" runat="server" MaxHeight="200px" Width="110px" DropDownWidth="160px"
                            DataSourceID="sqlBuildings" DataTextField="Building" DataValueField="Building" AppendDataBoundItems="true"
                            SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Building").CurrentFilterValue%>'
                            OnClientSelectedIndexChanged="BuildingIndexChanged">
                            <Items>
                                <telerik:RadComboBoxItem Text="All" />
                            </Items>
                        </telerik:RadComboBox>
 
                        <telerik:RadScriptBlock ID="RadScriptBlock1" runat="server">
                            <script type="text/javascript">
                                function BuildingIndexChanged(sender, args) {
                                    var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
                                    tableView.filter("Building", args.get_item().get_value(), "EqualTo");
                                }
                            </script>
                        </telerik:RadScriptBlock>
                    </FilterTemplate>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="Room" CurrentFilterFunction="NoFilter" FilterControlAltText="Filter Sub-Grouping column" HeaderText="Room/Sub-Group"
                    SortExpression="Room" UniqueName="Room" HeaderTooltip="Campus Room or other local sub-grouping">
                    <HeaderStyle Width="140px" />
                    <FilterTemplate>
                        <telerik:RadComboBox ID="RadComboBoxRoom" runat="server" MaxHeight="200px" Width="130px" DropDownWidth="260px"
                            DataSourceID="sqlRooms" DataTextField="Room" DataValueField="Room" AppendDataBoundItems="true"
                            SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("Room").CurrentFilterValue%>'
                            OnClientSelectedIndexChanged="RoomIndexChanged">
                            <Items>
                                <telerik:RadComboBoxItem Text="All" />
                            </Items>
                        </telerik:RadComboBox>
 
                        <telerik:RadScriptBlock ID="RadScriptBlock2" runat="server">
                            <script type="text/javascript">
                                function RoomIndexChanged(sender, args) {
                                    var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
                                    tableView.filter("Room", args.get_item().get_value(), "EqualTo");
                                }
                            </script>
                        </telerik:RadScriptBlock>
                    </FilterTemplate>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="IsReleased" FilterControlAltText="Filter IsReleased column" HeaderText="Released" SortExpression="IsReleased"
                    UniqueName="IsReleased" HeaderTooltip="Is the WoW or document released and publically available?">
                    <HeaderStyle Width="55px" />
                    <FilterTemplate>
                        <telerik:RadComboBox ID="RadComboBoxIsReleased" runat="server" Width="42px" DropDownAutoWidth="Enabled"
                            SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("IsReleased").CurrentFilterValue%>'
                            OnClientSelectedIndexChanged="IsReleasedIndexChanged">
                            <Items>
                                <telerik:RadComboBoxItem Text="All" />
                                <telerik:RadComboBoxItem Text="Yes" Value="Yes" />
                                <telerik:RadComboBoxItem Text="No" Value="No" />
                            </Items>
                        </telerik:RadComboBox>
 
                        <telerik:RadScriptBlock ID="RadScriptBlock5" runat="server">
                            <script type="text/javascript">
                                function IsReleasedIndexChanged(sender, args) {
                                    var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
                                    tableView.filter("IsReleased", args.get_item().get_value(), "EqualTo");
                                }
                            </script>
                        </telerik:RadScriptBlock>
                    </FilterTemplate>
                </telerik:GridBoundColumn>
                <telerik:GridBoundColumn DataField="NQMSRelated" CurrentFilterFunction="NoFilter" FilterControlAltText="Filter NIMS column" HeaderText="Compliance"
                    SortExpression="NQMSRelated"" UniqueName="NQMSRelated" HeaderTooltip="Is the WoW or document subject to Compliance?">
                    <HeaderStyle Width="50px" />
                    <FilterTemplate>
                        <telerik:RadComboBox ID="RadComboBoxNQMSRelated" runat="server" Width="42px" DropDownAutoWidth="Enabled"
                            SelectedValue='<%# TryCast(Container, GridItem).OwnerTableView.GetColumn("NQMSRelated").CurrentFilterValue%>'
                            OnClientSelectedIndexChanged="NQMSRelatedIndexChanged">
                            <Items>
                                <telerik:RadComboBoxItem Text="All" />
                                <telerik:RadComboBoxItem Text="Yes" Value="Yes" />
                                <telerik:RadComboBoxItem Text="No" Value="No" />
                            </Items>
                        </telerik:RadComboBox>
 
                        <telerik:RadScriptBlock ID="RadScriptBlock6" runat="server">
                            <script type="text/javascript">
                                function NQMSRelatedIndexChanged(sender, args) {
                                    var tableView = $find("<%# TryCast(Container, GridItem).OwnerTableView.ClientID%>");
                                    tableView.filter("NQMSRelated", args.get_item().get_value(), "EqualTo");
                                }
                            </script>
                        </telerik:RadScriptBlock>
                    </FilterTemplate>
                </telerik:GridBoundColumn>
            </Columns>
        </MasterTableView>
        <GroupingSettings CaseSensitive="false" />
    </telerik:RadGrid>
    <asp:SqlDataSource ID="sqlUnits" runat="server" ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
        SelectCommand="SELECT DISTINCT [Unit] FROM [WoW_VWR_Trackers] WHERE [Unit] IS NOT NULL ORDER BY [Unit]">
    </asp:SqlDataSource>
    <asp:SqlDataSource ID="sqlTypes" runat="server" ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
        SelectCommand="SELECT DISTINCT [Type] FROM [WoW_VWR_Trackers] ORDER BY [Type]"></asp:SqlDataSource>
    <asp:SqlDataSource ID="sqlBuildings" runat="server" ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
        SelectCommand="SELECT DISTINCT [Building] FROM [WoW_VWR_Trackers] WHERE [Building] IS NOT NULL ORDER BY [Building]">
    </asp:SqlDataSource>
    <asp:SqlDataSource ID="sqlRooms" runat="server" ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
        SelectCommand="SELECT DISTINCT [Room] FROM [WoW_VWR_Trackers] WHERE [Room] IS NOT NULL ORDER BY [Room]">
    </asp:SqlDataSource>
    <asp:SqlDataSource ID="sqlWoWList" runat="server" ConnectionString="<%$ ConnectionStrings:Hydra_DevConnectionString %>"
        SelectCommand="SELECT DiagramURL AS myURL, * FROM [Hydra_Dev].[dbo].[WoW_VWR_Trackers]">
    </asp:SqlDataSource>
</asp:Content>

And the code-behind:
Imports Telerik.Web.UI
Imports System.Diagnostics
Imports System.Collections.Specialized.NameObjectCollectionBase
Imports System.Net
Imports System.IO
 
Imports System.Net.Mail
 
 
Partial Class WoWlist
    Inherits System.Web.UI.Page
 
    Const lvlVerboseNone As Integer = 0
    Const lvlVerboseSilent As Integer = 1
    Const lvlVerboseMail As Integer = 2
    Const lvlVerboseScreen As Integer = 4
 
    Const lvlVerbose As Integer = lvlVerboseSilent
 
    Dim ShareFilter As Object
 
    Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
        Dim IsDataSyncd As Boolean = CheckDataSync()
        If lvlVerbose = lvlVerboseMail Then
            SendChkMail()
        End If
 
        If Not IsDataSyncd Then
            'Launch DataSync
        End If
 
        If Not IsPostBack Then
            If Request.QueryString("Title") IsNot Nothing Then
                Dim myTitle As String = Server.UrlDecode(Request.QueryString("Title").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(Title LIKE '" & myTitle & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("Title")
                radColumn.CurrentFilterValue = myTitle
                radColumn.CurrentFilterFunction = GridKnownFunction.Contains
            End If
            If Request.QueryString("Owner") IsNot Nothing Then
                Dim myOwner As String = Server.UrlDecode(Request.QueryString("Owner").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(DiagramOwner LIKE '" & myOwner & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("DiagramOwner")
                radColumn.CurrentFilterValue = myOwner
                radColumn.CurrentFilterFunction = GridKnownFunction.Contains
            End If
            If Request.QueryString("Building") IsNot Nothing Then
                Dim myBuilding As String = Server.UrlDecode(Request.QueryString("Building").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(Building LIKE '" & myBuilding & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("Building")
                radColumn.CurrentFilterValue = myBuilding
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            End If
            If Request.QueryString("Unit") IsNot Nothing Then
                Dim myUnit As String = Server.UrlDecode(Request.QueryString("Unit").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(Unit LIKE '" & myUnit & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("Unit")
                radColumn.CurrentFilterValue = myUnit
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            End If
            If Request.QueryString("Room") IsNot Nothing Then
                Dim myRoom As String = Server.UrlDecode(Request.QueryString("Room").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(Room LIKE '" & myRoom & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("Room")
                radColumn.CurrentFilterValue = myRoom
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            End If
            If Request.QueryString("Type") IsNot Nothing Then
                Dim myType As String = Server.UrlDecode(Request.QueryString("Type").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(Type LIKE '" & myType & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("Type")
                radColumn.CurrentFilterValue = myType
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            End If
            If Request.QueryString("Owner") IsNot Nothing Then
                Dim myOwner As String = Server.UrlDecode(Request.QueryString("Owner").ToString)
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(DiagramOwner LIKE '" & myOwner & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("DiagramOwner")
                radColumn.CurrentFilterValue = myOwner
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            End If
            If Request.QueryString("IsReleased") IsNot Nothing Then
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(IsReleased LIKE '" & Request.QueryString("IsReleased").ToString & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("IsReleased")
                radColumn.CurrentFilterValue = Request.QueryString("IsReleased").ToString
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            Else
                If Request.QueryString("IsReleased") Is Nothing And Request.QueryString("Owner") Is Nothing And Request.QueryString("Type") Is Nothing And Request.QueryString("Room") Is Nothing And Request.QueryString("Unit") Is Nothing Then
                    If RadGrid1.MasterTableView.FilterExpression <> "" Then
                        RadGrid1.MasterTableView.FilterExpression &= " AND "
                    End If
                    RadGrid1.MasterTableView.FilterExpression &= "(IsReleased LIKE 'Yes')"
                    Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("IsReleased")
                    radColumn.CurrentFilterValue = "Yes"
                    radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
                End If
            End If
            If Request.QueryString("NQMSRelated") IsNot Nothing Then
                If RadGrid1.MasterTableView.FilterExpression <> "" Then
                    RadGrid1.MasterTableView.FilterExpression &= " AND "
                End If
                RadGrid1.MasterTableView.FilterExpression &= "(NQMSRelated LIKE '" & Request.QueryString("NQMSRelated").ToString & "')"
                Dim radColumn As GridColumn = RadGrid1.MasterTableView.GetColumnSafe("NQMSRelated")
                radColumn.CurrentFilterValue = Request.QueryString("NQMSRelated").ToString
                radColumn.CurrentFilterFunction = GridKnownFunction.EqualTo
            End If
            'RadGrid1.MasterTableView.Rebind()
        End If
        ' FilterExpression="([IsReleased] LIKE 'Yes')"
    End Sub
 
    Private Function CheckDataSync() As Boolean
        Return True
    End Function
 
    Private Function SendChkMail() As Boolean
        Return False
    End Function
 
    Private Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
    End Sub
 
    Private Sub RadGrid1_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadGrid1.Load
    End Sub
 
    Private Sub RadGrid1_PreInit(ByVal sender As Object, ByVal e As System.EventArgs)
        For Each item As GridColumn In RadGrid1.MasterTableView.Columns
            Dim FilterFunction As String = item.CurrentFilterFunction.ToString
            Dim FilterValue As String = item.CurrentFilterValue.ToString
            Dim FilterColumn As String = item.UniqueName.ToString
 
            If FilterFunction <> "NoFilter" Then
                If item.CurrentFilterValue.ToString() = "" Then
                    item.ItemStyle.BackColor = RadGrid1.AlternatingItemStyle.BackColor
                Else
                    item.ItemStyle.BackColor = Drawing.Color.LightYellow
                End If
            End If
 
        Next
    End Sub
 
    Protected Sub RadGrid1_PreRender(ByVal source As Object, ByVal e As System.EventArgs) Handles RadGrid1.PreRender
        If Not RadGrid1.MasterTableView.FilterExpression Is String.Empty Then
            RefreshCombos()
        End If
 
        For Each item As GridColumn In RadGrid1.MasterTableView.Columns
            Dim FilterFunction As String = item.CurrentFilterFunction.ToString
            Dim FilterValue As String = item.CurrentFilterValue.ToString
            Dim FilterColumn As String = item.UniqueName.ToString
 
            If FilterFunction <> "NoFilter" Then
                If item.CurrentFilterValue.ToString() = "" Then
                    item.ItemStyle.BackColor = RadGrid1.AlternatingItemStyle.BackColor
                Else
                    item.ItemStyle.BackColor = Drawing.Color.LightYellow
                End If
            End If
 
        Next
    End Sub
 
    Protected Sub RefreshCombos()
        sqlBuildings.SelectCommand = AddFilterParameters(sqlBuildings.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
        sqlRooms.SelectCommand = AddFilterParameters(sqlRooms.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
 
        sqlTypes.SelectCommand = AddFilterParameters(sqlTypes.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
 
        sqlUnits.SelectCommand = AddFilterParameters(sqlUnits.SelectCommand, RadGrid1.MasterTableView.FilterExpression.ToString())
        RadGrid1.MasterTableView.Rebind()
    End Sub
 
    Private Function AddFilterParameters(ByVal sqlSelect As String, FilterExpression As String) As String
        Dim posORDER As Int16 = 0
        posORDER = InStr(sqlSelect, "ORDER BY", CompareMethod.Text) - 1
        Dim sqlOrder As String = Right(sqlSelect, Len(sqlSelect) - posORDER)
 
        Dim posWHERE As Int16 = 0
        posWHERE = InStr(sqlSelect, "WHERE", CompareMethod.Text) - 2
 
        Dim sqlCommand As String = ""
        If posWHERE < 0 Then
            sqlCommand = Left(sqlSelect, posORDER)
        Else
            sqlCommand = Left(sqlSelect, posWHERE)
        End If
 
        Dim sqlFilter As String = ""
        If posWHERE > 2 Then
            sqlFilter = Mid(sqlSelect, posWHERE + 8, posORDER - posWHERE - 8)
        End If
 
        If sqlFilter.Length > 0 Then
            If Left(FilterExpression, 5) <> " AND " Then
                sqlFilter &= " AND "
            End If
        End If
        sqlFilter &= FilterExpression
 
        sqlCommand &= " WHERE " & sqlFilter
 
        Return sqlCommand
    End Function
 
    Private Sub RadGrid1_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles RadGrid1.Init
        Dim menu As GridFilterMenu = RadGrid1.FilterMenu
        Dim i As Integer = 0
        While i < menu.Items.Count
            If menu.Items(i).Text = "NoFilter" Or _
               menu.Items(i).Text = "Contains" Or _
               menu.Items(i).Text = "EqualTo" Then
                i = i + 1
            Else
                menu.Items.RemoveAt(i)
            End If
        End While
    End Sub
 
    Private Sub RadGrid1_ItemCommand(sender As Object, e As Telerik.Web.UI.GridCommandEventArgs) Handles RadGrid1.ItemCommand
        If e.CommandName = RadGrid.FilterCommandName Then
            Dim objFilterPair As Pair = CType(e.CommandArgument, Pair)
            Dim objCol As GridColumn = CType(e.Item.OwnerTableView.GetColumn(objFilterPair.Second.ToString()), GridColumn)
 
            Debug.Print("[" & objFilterPair.First.ToString & "]:[" & objFilterPair.Second.ToString & "] = [" & objCol.CurrentFilterValue.ToString() & "]")
 
            If objCol.CurrentFilterValue.ToString() = "" Then
                objCol.ItemStyle.BackColor = RadGrid1.AlternatingItemStyle.BackColor
            Else
                objCol.ItemStyle.BackColor = Drawing.Color.LightYellow
            End If
 
        End If
    End Sub
 
    Protected Sub lnkShareFilter_ServerClick(sender As Object, e As EventArgs)
        Dim lnkFilter As String = String.Empty
 
        For Each item As GridColumn In RadGrid1.MasterTableView.Columns
            Dim FilterFunction As String = item.CurrentFilterFunction.ToString
            Dim FilterValue As String = item.CurrentFilterValue.ToString
            Dim FilterColumn As String = item.UniqueName.ToString
 
            If FilterFunction <> "NoFilter" Then
                Debug.Print(FilterColumn & ":" & FilterFunction & "=" & FilterValue)
                lnkFilter &= "&" & FilterColumn & "=" & Server.UrlEncode(FilterValue)
            End If
 
        Next
 
        lnkFilter = "mailto:&subject=WoW List&body=" & Server.UrlEncode("http://chorra0004/hydra/bpm/WoWList.aspx?" & lnkFilter.Substring(1))
 
        Debug.Print("[" & lnkFilter & "]")
        ClientScript.RegisterStartupScript(Me.GetType(), "mailto", "<script type = 'text/javascript'>parent.location='" & lnkFilter & "'</script>")
    End Sub
 
    Protected Function ContentExists(ByVal strUrl As String) As Boolean
        Try
            Dim hwrRequest As HttpWebRequest = WebRequest.Create(strUrl)
            Dim hwrResponse As HttpWebResponse = hwrRequest.GetResponse()
            Dim stmStream As Stream = hwrResponse.GetResponseStream()
            Dim strReader As String = New StreamReader(stmStream).ReadToEnd()
            Return True
        Catch ex As Exception
            Return False
        End Try
    End Function
 
    Protected Function urlExists(ByVal strUrl As String) As Boolean
        Try
            Dim hwrRequest As HttpWebRequest = WebRequest.Create(strUrl)
            hwrRequest.AllowAutoRedirect = False
            Dim hwrResponse As HttpWebResponse = hwrRequest.GetResponse()
            If hwrResponse.StatusCode = HttpStatusCode.OK Then
                Return True
            Else
                Return False
            End If
        Catch ex As Exception
            Return False
        End Try
    End Function
End Class

Error occurs in Page_Load sub.



Eyup
Telerik team
 answered on 20 Mar 2015
1 answer
125 views
Hi Telerik Team
I am working on telerik asp.net scheduler.
When the resources(Left side in scheduler) is more than or equal to 65 it is giving error.
ERROR:
Specified argument was out of the range of valid values.
I already posted comment related to this in (http://feedback.telerik.com/Project/108/Feedback/Details/117889-specified-argument-was-out-of-the-range-of-valid-values) at 13 March 2015, 11:35.
Please find attached files from the above link.

Regards,
Tarun
Boyan Dimitrov
Telerik team
 answered on 20 Mar 2015
2 answers
79 views
Hi,
I have a RadEditor with StripFormattingOptions="AllExceptNewLines". Once the editor is loaded, if the user does a mouse-click followed by CTRL+V to paste html content, the html formatting is stripped successfully ONLY if there is a certain amount of time space between mouse-click and CTRL+V.
If the time gap is less, the following javascript exception is thrown and the formatting is not stripped.

Line: 2313
Error: 'parentNode' is null or not an object


We have users who do a quick Mouse+Click followed by CTRL+V and hence we see this bug quite often.
Please let me know if you have a workaround for this.
Any help is appreciated.

Thanks
Sangeetha
Ianko
Telerik team
 answered on 20 Mar 2015
1 answer
135 views
When a certain combination of html is pasted into a RadEditor on our site, the webpage freezes and eventually we get the Long Running Script error.

The text I am test is nothing too strange:

For registration information Alicia Pierre Louis at <a href="mailto:asearles@misd.net">asearles@misd.net</a>.&nbsp; Join us for one more day of professional learning experience of bringing the Common Core Reading Standards to your K-2 classroom.&nbsp; We will take a look at the "brand new" MAISA Reading Units K-2. We will also include a half day session of leveled texts.

If I shorten it to the following, I don't get the error:

at <a href="mailto:asearles@misd.net">asearles@misd.net</a>.&nbsp; Join us for one more day of professional learning experience of bringing the Common Core Reading Standards to your K-2 classroom.&nbsp; We will take a look at the "brand new" MAISA Reading 

If I don't have both a mailto link and the double quotes, I don't get the error.

I was able to reproduce the problem in some sample code I found at http://www.telerik.com/forums/paste-plain-text-pop-up-causes-you-to-jump-to-the-top-of-the-page.

I'm using version 2014.3.1024.35.



Ianko
Telerik team
 answered on 20 Mar 2015
1 answer
142 views
So we have this RadGrid, it cannot be paged and appears unfiltered.  In some cases there are upwards of 1000 rows and in other cases upwards of 3000 rows.

In IE8 it causes the "Long running script, do you want to stop running scripts" message.

The only reason this grid is used here is because it is standard grid being used in the application, but it's use is minimal, some sorting and and a separate filter that retrieves the data again anyway.

So is there anything the grid may be doing that I can switch off to make it faster and less intensive?  I know nothing about Telerik controls or RadGrids?
Maria Ilieva
Telerik team
 answered on 20 Mar 2015
3 answers
104 views
The load on demand feature works well based on examples when using the standard combobox.items.add
How do we achieve the same when we are working with custom templates?

An example for Load on Demand with custom templates would be much appreciated.

Thank you.
Dimitar Terziev
Telerik team
 answered on 20 Mar 2015
4 answers
132 views
I have a RadTreeView which has parent nodes which can be expanded to show its child nodes. These child nodes should then be able to be selected using checkboxes, but the parent nodes shouldn't. My issue is an accessibility one, as I wish to have the checkboxes associated with their text through a label, but the RadTreeView uses a <span> tag. The child nodes are populated when the parent node is expanded via the RadTreeView1_NodeExpand() method.

I believe the issue revolves around the parent/child situation as when creating a RadTreeView previously with no child nodes and a DataBind() I was able to declare a <NodeTemplate> which used checkboxes/labels, however this template does not seem to be used when adding the nodes via code behind using the Add() method with parents and children.

Is there a way I can add child nodes that adhere to a template I specify?

Here is my code, I have attached screenshots as well showing the association errors via WAVE.

No parent/children aspx:
<telerik:RadTreeView ID="RadTreeView1" runat="server" Skin="Skin_Telerik"
            CheckBoxes="false" MultipleSelect="true" SingleExpandPath="False"
            DataTextField="IDWithTitle" EnableEmbeddedSkins="false" DataFieldID="CategoryID"
            DataValueField="CategoryID" OnClientNodeClicked="ClientNodeClicked" Style="font-size:medium; white-space: normal;">
            <NodeTemplate>
                <asp:CheckBox runat="server" id="chkCategory" CssClass="rtChk" 
            Text='<%# String.Format("{0}: {1}", DataBinder.Eval(Container.DataItem, "CategoryID"), DataBinder.Eval(Container.DataItem, "Title")) %>' />
                <asp:HiddenField runat="server" ID="categoryID" Value='<%#DataBinder.Eval(Container.DataItem, "CategoryID")%>' />
            </NodeTemplate>
</telerik:RadTreeView>

No parent/children VB:
    RadTreeView1.DataSource = oList
    RadTreeView1.DataBind()


Parent/children aspx: 
<telerik:radtreeview id="RadTreeView1" AccessKey="M" TabIndex="1" runat="server" skin="Skin_Telerik" checkboxes="true"
                    multipleselect="true" singleexpandpath="False" datatextfield="Title" da enableembeddedskins="false"  
                    datafieldid="ID" datafieldparentid="ParentId" datavaluefield="ID" onclientnodeclicked="ClientNodeClicked" 
                    onnodeexpand="RadTreeView1_NodeExpand" Style="white-space: normal;" CheckChildNodes="true" Font-Size="Medium"/>

Parent/children VB:


Any help would be much appreciated!

Alan
Nencho
Telerik team
 answered on 20 Mar 2015
7 answers
157 views
Hi,
does anyone know where I can get a download of the latest RadControls that support .net 2.0? I believe it is the 2010 Q4 release, but the Telerik ControlPanel does not go back that far.

Thanks!
Michael
Marin Bratanov
Telerik team
 answered on 20 Mar 2015
4 answers
110 views
Hi,

I have a scenario in which I have a HtmlChart and upon a series click, i catch client side series click event and make a ajax request to update a rad grid. 
I am receving the ajax request and binding the radgrid, but grid on client side is not updating. 

Below is the code snippet:

<%@ Page Title="" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="ChickenpoxSLA.aspx.cs" Inherits="Microsoft.Azure.Documents.Dashboard.Reports.Availability.ChickenpoxSLA" %>
<asp:Content ID="Content1" ContentPlaceHolderID="MainContent" runat="server">
    <script type="text/javascript" src="../../Scripts/Reports.js"></script>
    <telerik:RadAjaxManager ID="RadAjaxManager1" runat="server" OnAjaxRequest="RadAjaxManager1_AjaxRequest">
        <AjaxSettings>
            <telerik:AjaxSetting AjaxControlID="ChickenpoxChart">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="ChickenpoxChart" LoadingPanelID="LoadingPanel1"></telerik:AjaxUpdatedControl>
                    <telerik:AjaxUpdatedControl ControlID="AccountsAvailability" LoadingPanelID="LoadingPanel1" UpdatePanelCssClass="" />
                </UpdatedControls>
            </telerik:AjaxSetting>
            <telerik:AjaxSetting AjaxControlID="AccountsAvailability">
                <UpdatedControls>
                    <telerik:AjaxUpdatedControl ControlID="ChickenpoxChart" LoadingPanelID="LoadingPanel1"></telerik:AjaxUpdatedControl>
                    <telerik:AjaxUpdatedControl ControlID="AccountsIncidents" LoadingPanelID="LoadingPanel1" UpdatePanelCssClass="" />
                </UpdatedControls>
            </telerik:AjaxSetting>
        </AjaxSettings>
    </telerik:RadAjaxManager>
 
    <telerik:RadAjaxLoadingPanel ID="LoadingPanel1" Skin="Default" runat="server">
    </telerik:RadAjaxLoadingPanel>
 
    <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server">
        <script type="text/javascript">
            function getAjaxManager() {
                return $find("<%=RadAjaxManager1.ClientID%>");
            }
        </script>
    </telerik:RadCodeBlock>
    <div class="row">
        <div class="col-lg-2">
            <div id="sidebar">
                <ul class="nav list-group">
                    <li>
                        <a class="list-group-item" href="ChickenpoxSLA.aspx"><i class="icon-home icon-1x"></i>Chickenpox SLA</a>
                    </li>
                    <li>
                        <a class="list-group-item" href="#"><i class="icon-home icon-1x"></i>Internal Customers Availability</a>
                    </li>
                </ul>
            </div>
        </div>
        <div class="col-lg-10">
             <div class="row">
                <div class="col-lg-12">
                    <div class="panel-group" id="accordion">
                      <div class="panel panel-default">
                        <div class="panel-heading">
                          <h4 class="panel-title">
                            <a data-toggle="collapse" data-parent="#accordion" href="#collapseOne">
                              Availability SLA properties
                            </a>
                          </h4>
                        </div>
                        <div id="collapseOne" class="panel-collapse collapse in">
                          <div class="panel-body">
                            <div class="row">
                                <div class="col-lg-2">
                                   <asp:Label runat="server" Font-Bold="true" Text="Time Range"></asp:Label>
                                   <telerik:RadDropDownList runat="server" ID="AvailabilityTime" TabIndex="1" Width="200" DropDownWidth="200" DefaultMessage="Select Availability Time Range ..."
                                        AutoPostBack="true" OnSelectedIndexChanged="AvailabilityTime_SelectedIndexChanged">
                                        <Items>
                                            <telerik:DropDownListItem Text="Hourly" Selected="true"/>
                                            <telerik:DropDownListItem Text="Daily" />
                                            <telerik:DropDownListItem Text="Weekly" />
                                        </Items>
                                   </telerik:RadDropDownList>
                                </div>
                            </div>
                          </div>
                        </div>
                      </div>
                    </div>
                </div>
            </div>
             <div class="row">
                <div class="col-lg-8">
                    <telerik:RadHtmlChart runat="server" ID="ChickenpoxChart" Height="600px" OnClientSeriesClicked="OnChickenpoxChartClicked">
                        <PlotArea>
                            <Series>
                            </Series>
                            <XAxis>
                            </XAxis>
                            <YAxis>
                            </YAxis>
                        </PlotArea>
                        <ChartTitle Text="Chickenpox SLA">
                        </ChartTitle>
                    </telerik:RadHtmlChart>
                </div>
             </div>
             <br />
             <br />
             <div class="row">
                <div class="col-lg-6">
                    <label for="AccountsAvailability">Accounts Violating SLA</label>
                    <br />
                    <telerik:RadGrid ID="AccountsAvailability" AllowPaging="false" runat="server" GridLines="None" AllowSorting="false" EnableViewState="false">
                        <ClientSettings AllowKeyboardNavigation="false" EnablePostBackOnRowClick="true">
                            <Selecting AllowRowSelect="true"></Selecting>
                        </ClientSettings>
                    </telerik:RadGrid>
                    <br />
                </div>
                <div class="col-lg-6">
                    <label for="AccountsIncidents">Incidents for the Impacted Account</label>
                    <br />
                    <telerik:RadGrid ID="AccountsIncidents" AllowPaging="false" runat="server" GridLines="None" AllowSorting="true" OnNeedDataSource="AccountsIncidents_NeedDataSource"
                        OnItemCommand="AccountsIncidents_ItemCommand">
                        <ClientSettings AllowKeyboardNavigation="false" EnablePostBackOnRowClick="true">
                            <Selecting AllowRowSelect="true"></Selecting>
                        </ClientSettings>
                    </telerik:RadGrid>
                    <br />
                </div>
             </div>
        </div>
    </div>
</asp:Content>

(function (global, undefined) {
    global.OnChickenpoxChartClicked = function (sender, args) {
        var ajaxManager = global.getAjaxManager();

        if (args.get_seriesName() !== "Months") {
            ajaxManager.ajaxRequest(args.get_category());
        }
    }
})(window);

using System;
using System.Collections.Generic;
using System.Data;
using System.Globalization;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Telerik.Charting;
using Telerik.Web.UI;

namespace Microsoft.Azure.Documents.Dashboard.Reports.Availability
{
    enum ChickenpoxSLAType
    {
        Hourly,
        Daily,
        Weekly
    }
    public partial class ChickenpoxSLA : System.Web.UI.Page
    {
        string environment;
        DateTime accountAvailabilityTime;

        protected void Page_Load(object sender, EventArgs e)
        {
            RadDropDownList list = (RadDropDownList)Master.FindControl("GlobalEnvironment");
            this.environment = list.SelectedValue;

            if(!IsPostBack)
            {
                this.AccountsAvailability.DataSource = new string[] { };
                this.AccountsAvailability.DataBind();
                this.AccountsIncidents.DataSource = new string[] { };
                this.AccountsIncidents.DataBind();
            }
            UpdateChart(ChickenpoxSLAType.Hourly);
        }

        private void UpdateChart(ChickenpoxSLAType slaType)
        {
            DataTable table = null;

            switch(slaType)
            {
                case ChickenpoxSLAType.Hourly:
                    table = SiteGlobal.Repository[this.environment].GetChickenpoxSLA1H(DateTime.Now.AddDays(-1), DateTime.Now);
                    ChickenpoxChart.PlotArea.XAxis.DataLabelsField = "Time";
                    break;
                case ChickenpoxSLAType.Daily:
                    table = SiteGlobal.Repository[this.environment].GetChickenpoxSLA1D(DateTime.Now.AddDays(-15), DateTime.Now);
                    ChickenpoxChart.PlotArea.XAxis.DataLabelsField = "Date";
                    break;
                //case ChickenpoxSLAType.Weekly:
                //    table = SiteGlobal.Repository[this.environment].GetChickenpoxSLAWeekly(DateTime.Now.AddDays(-1), DateTime.Now);
                //    break;
                default:
                    table = SiteGlobal.Repository[this.environment].GetChickenpoxSLA1H(DateTime.Now.AddDays(-1), DateTime.Now);
                    ChickenpoxChart.PlotArea.XAxis.DataLabelsField = "Time";
                    break;
            }

            ChickenpoxChart.PlotArea.XAxis.MajorGridLines.Visible = false;
            ChickenpoxChart.PlotArea.XAxis.MinorGridLines.Visible = false;
            ChickenpoxChart.PlotArea.YAxis.MajorGridLines.Visible = false;
            ChickenpoxChart.PlotArea.YAxis.MinorGridLines.Visible = false;
            
            //ChickenpoxChart.PlotArea.YAxis.MinValue = 0;

            AxisY additionYAxis = new AxisY();
            additionYAxis.Name = "SLAVioloationsAxis";
            additionYAxis.MinValue = 0;
            additionYAxis.MaxValue = 25;
            additionYAxis.Visible = false;
            ChickenpoxChart.PlotArea.AdditionalYAxes.Add(additionYAxis);
            ChickenpoxChart.PlotArea.XAxis.AxisCrossingPoints.Add(0);
            ChickenpoxChart.PlotArea.XAxis.AxisCrossingPoints.Add(20);

            ColumnSeries totalAccountSeries = new ColumnSeries();
            totalAccountSeries.Name = "Total Accounts";
            totalAccountSeries.DataFieldY = "TotalAccounts";
            totalAccountSeries.TooltipsAppearance.DataFormatString = "{0}";
            
            LineSeries slaViolationSeries = new LineSeries();
            slaViolationSeries.AxisName = "SLAVioloationsAxis";
            slaViolationSeries.Name = "SLA Violations";
            slaViolationSeries.DataFieldY = "SLAViolations";
            slaViolationSeries.TooltipsAppearance.DataFormatString = "{0}";
            slaViolationSeries.Appearance.FillStyle.BackgroundColor = System.Drawing.Color.Black;
            
            ChickenpoxChart.PlotArea.Series.Add(totalAccountSeries);
            ChickenpoxChart.PlotArea.Series.Add(slaViolationSeries);

            ChickenpoxChart.DataSource = table;
            ChickenpoxChart.DataBind();
        }

        protected void AvailabilityTime_SelectedIndexChanged(object sender, Telerik.Web.UI.DropDownListEventArgs e)
        {
            ChickenpoxChart.PlotArea.Series.Clear();
            ChickenpoxChart.PlotArea.XAxis.Items.Clear();
            ChickenpoxChart.PlotArea.AdditionalYAxes.Clear();

            ChickenpoxSLAType slaType = (ChickenpoxSLAType)Enum.Parse(typeof(ChickenpoxSLAType), AvailabilityTime.SelectedText);
            UpdateChart(slaType);
        }

        protected void RadAjaxManager1_AjaxRequest(object sender, AjaxRequestEventArgs e)
        {
            string seriesName = ChickenpoxChart.PlotArea.Series[0].Name;
            string ShortFormat = "ddd MMM d yyyy HH:mm:ss";
            string[] Formats = { ShortFormat };
            string dateTobeParsed1 = e.Argument.Substring(0, e.Argument.IndexOf('G') - 1);
            accountAvailabilityTime = DateTime.ParseExact(dateTobeParsed1, Formats, CultureInfo.InvariantCulture, DateTimeStyles.AssumeUniversal).ToUniversalTime();

            AccountsAvailability.DataSource = SiteGlobal.Repository[this.environment].GetAccountAvailability1H(Convert.ToDateTime("2015-03-11 16:00:00.000"));
            AccountsAvailability.Rebind();
        }

        protected void AccountsIncidents_NeedDataSource(object sender, GridNeedDataSourceEventArgs e)
        {

        }

        protected void AccountsIncidents_ItemCommand(object sender, GridCommandEventArgs e)
        {

        }
    }
}

Appreciate in any help here.

Thanks
Satish
Satish Kumar
Top achievements
Rank 1
 answered on 20 Mar 2015
Narrow your results
Selected tags
Tags
+? more
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Top users last month
Jay
Top achievements
Rank 3
Bronze
Iron
Iron
yw
Top achievements
Rank 2
Iron
Iron
Stefan
Top achievements
Rank 2
Iron
Iron
Iron
Kao Hung
Top achievements
Rank 1
Iron
Bohdan
Top achievements
Rank 2
Iron
Iron
Iron
Want to show your ninja superpower to fellow developers?
Want to show your ninja superpower to fellow developers?