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

[Solved] Help with Grid Filter

4 Answers 128 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Ryan
Top achievements
Rank 1
Ryan asked on 09 Jun 2014, 01:59 PM
I have this grid filter that stopped working.  I have about 6-10 of these filters on the grid and just this one stopped working.  Any suggestions??

<telerik:GridBoundColumn DataField="AssignedTo"
            FilterControlAltText="Filter AssignedTo column" HeaderText="AssignedTo"
            SortExpression="AssignedTo" UniqueName="AssignedTo">
 
 
            <FilterTemplate>
                <telerik:RadComboBox ID="RadComboBoxAssignedTo" DataSourceID="SqlDataSource4" DataTextField="UserName"
                    DataValueField="UserName" Height="150px" Width="100px" AppendDataBoundItems="true" SelectedValue='<%# TryCast(Container,GridItem).OwnerTableView.GetColumn("AssignedTo").CurrentFilterValue %>'
                    runat="server" OnClientSelectedIndexChanged="AssignedToIndexChanged">
                    <Items>
                        <telerik:RadComboBoxItem Text="All" />
                    </Items>
                </telerik:RadComboBox>
                <telerik:RadScriptBlock ID="RadScriptBlock3" runat="server">
 
                    <script type="text/javascript">
                        function AssignedToIndexChanged(sender, args) {
                            var tableView = $find("<%# TryCast(Container,GridItem).OwnerTableView.ClientID %>");
                            tableView.filter("AssignedTo", args.get_item().get_value(), "EqualTo");
                        }
                    </script>
 
                </telerik:RadScriptBlock>
            </FilterTemplate>
 
        </telerik:GridBoundColumn>


Here is the error I am getting.

Server Error in '/' Application.Selection out of range
Parameter name: value Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.ArgumentOutOfRangeException: Selection out of range
Parameter name: value

Source Error:

An unhandled exception was generated during the execution of the current web request. Information regarding the origin and location of the exception can be identified using the exception stack trace below.
Stack Trace:

[ArgumentOutOfRangeException: Selection out of range
Parameter name: value]
Telerik.Web.UI.RadComboBox.PerformDataBinding(IEnumerable dataSource) +191
Telerik.Web.UI.RadComboBox.OnDataSourceViewSelectCallback(IEnumerable data) +510
System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +33
Telerik.Web.UI.RadComboBox.OnDataBinding(EventArgs e) +1298
Telerik.Web.UI.RadComboBox.PerformSelect() +37
System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +30
Telerik.Web.UI.RadComboBox.DataBind() +70
System.Web.UI.Control.DataBindChildren() +187
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +94
System.Web.UI.Control.DataBind() +15
System.Web.UI.Control.DataBindChildren() +187
System.Web.UI.Control.DataBind(Boolean raiseOnDataBinding) +94
System.Web.UI.Control.DataBind() +15
Telerik.Web.UI.GridItem.SetupItem(Boolean dataBind, Object dataItem, GridColumn[] columns, ControlCollection rows) +1304
Telerik.Web.UI.GridTableView.CreateFilteringItem(Boolean useDataSource, GridColumn[] copiedColumnSet, GridTHead thead) +167
Telerik.Web.UI.GridTableView.CreateControlHierarchy(Boolean useDataSource) +3070
Telerik.Web.UI.GridTableView.CreateChildControls(IEnumerable dataSource, Boolean useDataSource) +1147
System.Web.UI.WebControls.CompositeDataBoundControl.PerformDataBinding(IEnumerable data) +67
System.Web.UI.WebControls.DataBoundControl.OnDataSourceViewSelectCallback(IEnumerable data) +123
System.Web.UI.DataSourceView.Select(DataSourceSelectArguments arguments, DataSourceViewSelectCallback callback) +33
System.Web.UI.WebControls.DataBoundControl.PerformSelect() +138
Telerik.Web.UI.GridTableView.PerformSelect() +38
System.Web.UI.WebControls.BaseDataBoundControl.DataBind() +30
Telerik.Web.UI.GridTableView.DataBind() +642
Telerik.Web.UI.GridTableView.Rebind() +117
Telerik.Web.UI.GridFilterCommandEventArgs.ExecuteCommand(Object source) +1237
Telerik.Web.UI.RadGrid.OnBubbleEvent(Object source, EventArgs e) +205
System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +37
Telerik.Web.UI.GridItem.OnBubbleEvent(Object source, EventArgs e) +71
System.Web.UI.Control.RaiseBubbleEvent(Object source, EventArgs args) +37
Telerik.Web.UI.GridItem.OnBubbleEvent(Object source, EventArgs e) +147
Telerik.Web.UI.GridItem.FireCommandEvent(String commandName, Object commandArgument) +88
Telerik.Web.UI.RadGrid.RaisePostBackEvent(String eventArgument) +12648
System.Web.UI.Page.RaisePostBackEvent(IPostBackEventHandler sourceControl, String eventArgument) +13
System.Web.UI.Page.RaisePostBackEvent(NameValueCollection postData) +9528682
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +1724

4 Answers, 1 is accepted

Sort by
0
Shinu
Top achievements
Rank 2
answered on 10 Jun 2014, 05:06 AM
Hi Ryan,

Please try to set the SelectedValue of RadComboBox not declaratively, but in code behind:

VB:
Protected Sub RadGrid1_ItemDataBound(sender As Object, e As Telerik.Web.UI.GridItemEventArgs) Handles RadGrid1.ItemDataBound    
  If TypeOf e.Item Is GridFilteringItem Then
    'Access the filter combobox
    combo.SelectedValue = e.Item.OwnerTableView.GetColumn("AssignedTo").CurrentFilterValue
  End If
End Sub

Thanks,
Shinu
0
Ryan
Top achievements
Rank 1
answered on 03 Jul 2014, 05:35 PM
Visual studio is yelling about "combo.SelectedValue="

Why would 1 of 10 filters start doing this?
0
Ryan
Top achievements
Rank 1
answered on 03 Jul 2014, 06:36 PM
Also, these were made using this example.

http://demos.telerik.com/aspnet-ajax/grid/examples/functionality/filtering/filter-templates/defaultcs.aspx

its weird that 1 out of 10 has this issue.
0
Ryan
Top achievements
Rank 1
answered on 07 Jul 2014, 01:30 PM
Not sure why this worked, but I changed UniqueName="AssignedTo" to something like UniqueName="unqAssignedTo" and changed all the spots it was referenced and it started working.  This unique name is not used anywhere else, so I am not sure why it all of the sudden started working.  Just thought I would share.
Tags
Grid
Asked by
Ryan
Top achievements
Rank 1
Answers by
Shinu
Top achievements
Rank 2
Ryan
Top achievements
Rank 1
Share this question
or