SikhSuperman
Top achievements
Rank 1
SikhSuperman
asked on 17 Oct 2012, 10:25 PM
Hello,
I need to have the ability to select the first row in a grid automatically and based on that selection two other radgrids gets populated. I was able to achieve the selection of the first row by doing the following in the prerender method.
This worked somewhat. (1) The two other grids are not populated when the autoselection happens, and (2) If i select another row in RadGrid1, the new selection is not kept and isntead the row from the prerender method is always selected.
I had all this working when a user comes in selects from a dropdown, but it seems that the client wants the first selection in the radcombobox to be automatically selected with the relevant data...
Any help would be tremendous, please!
SS
I need to have the ability to select the first row in a grid automatically and based on that selection two other radgrids gets populated. I was able to achieve the selection of the first row by doing the following in the prerender method.
This worked somewhat. (1) The two other grids are not populated when the autoselection happens, and (2) If i select another row in RadGrid1, the new selection is not kept and isntead the row from the prerender method is always selected.
I had all this working when a user comes in selects from a dropdown, but it seems that the client wants the first selection in the radcombobox to be automatically selected with the relevant data...
Any help would be tremendous, please!
SS
' PreRender Methodif (RadGrid1.MasterTableView.Items(0).Count > 0) Then RadGrid1.MasterTableView.Items(0).Selected = TrueEnd If8 Answers, 1 is accepted
0
SikhSuperman
Top achievements
Rank 1
answered on 18 Oct 2012, 01:41 PM
Hey folks -
Anybody have any idea that can get me moving in the right direction? Please?
Anybody have any idea that can get me moving in the right direction? Please?
0
Casey
Top achievements
Rank 1
answered on 18 Oct 2012, 02:42 PM
Hello,
To prevent the first item from always being selected, you should only set it selected if there are not any items selected in the RadGrid already.
I hope this helps!
Casey
To prevent the first item from always being selected, you should only set it selected if there are not any items selected in the RadGrid already.
I hope this helps!
Casey
If (RadGrid1.MasterTableView.Items(0).Count > 0) Then If (RadGrid1.SelectedItems.Count == 0) Then RadGrid1.MasterTableView.Items(0).Selected = True End If 'You could rebind your other RadGrids here since you will have an item selected in the first RadGrid. 'Then in the NeedDataSource for your other RadGrids, use the values from the item that is selected in RadGrid1End If0
SikhSuperman
Top achievements
Rank 1
answered on 18 Oct 2012, 03:11 PM
Hi Casey,
Thanks so much for the reply. The selection works as intended (I do want the first row selected upon entering the page and radgrid).
I did what you suggested below, but for some reason when I do the Rebind() to the other grids, the _ItemDatabound fires for the grids instead of the _NeedsDataSource events...any idea why? I thought that the Rebind() automatically fires the _NeedsDataSource by design?
Thanks again!
SS
Thanks so much for the reply. The selection works as intended (I do want the first row selected upon entering the page and radgrid).
I did what you suggested below, but for some reason when I do the Rebind() to the other grids, the _ItemDatabound fires for the grids instead of the _NeedsDataSource events...any idea why? I thought that the Rebind() automatically fires the _NeedsDataSource by design?
If (grd1s.MasterTableView.Items.Count > 0) Then If (grd1.SelectedIndexes.Count = 0) Then grd1.MasterTableView.Items(0).Selected = True grd1.Enabled = True End If radGrid2.Rebind() radGrid3.Rebind() End ifSS
0
Casey
Top achievements
Rank 1
answered on 18 Oct 2012, 03:18 PM
That is correct. The NeedDataSource events for RadGrid2 and RadGrid3 should be hit when calling the Rebind() method. Could you please post the definitions for RadGrid2 and RadGrid3, as well as their respective NeedDataSource events?
Thanks!
Casey
Thanks!
Casey
0
SikhSuperman
Top achievements
Rank 1
answered on 18 Oct 2012, 03:30 PM
Thanks Casey for the continued help!
The RadGrid2_ItemDatabound is the same as RadGrid1 except 'txtO' is now 'txtG'.
Thanks
SS
Protected Sub RadGrid1_NeedDataSource(sender As Object, e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles RadGrid1.NeedDataSource If (ID > 0) Then Dim ds As DataSet ds = xClass.GetX(EventsID) RadGrid1.DataSource = ds.Tables(0) Else 'Set empty grid RadGrid1.DataSource = New Integer() {} End IfProtected Sub RadGrid2_NeedDataSource(sender As Object, e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles RadGrid2.NeedDataSource If (ID IsNot Nothing) Then Dim ds As DataSet ds = xClass.GetX(EventsID) RadGrid2.DataSource = ds.Tables(0) Else 'Set empty grid RadGrid2.DataSource = New Integer() {} End If Protected Sub RadGrid1_ItemDataBound(sender As Object, e As Telerik.Web.UI.GridItemEventArgs) Handles RadGrid1.ItemDataBound If TypeOf e.Item Is GridEditableItem AndAlso e.Item.IsInEditMode Then Dim item As GridEditableItem = TryCast(e.Item, GridEditableItem) Dim txtO As RadTextBox = item.FindControl("txtO") Dim rdpDate As RadDatePicker = item.FindControl("txtDate") If (txtO IsNot Nothing) Then txtO.Focus() End If End If End Sub End Sub End SubThanks
SS
0
Casey
Top achievements
Rank 1
answered on 18 Oct 2012, 08:14 PM
Are you using a value from the selected row in RadGrid1 to pass to a method to get the data for RadGrid2? I'm a little lost because I'm unsure of where you are setting the values for ID and EventsID.
Could you also post your RadGrid2 definition from the aspx page?
Thanks!
Casey
Could you also post your RadGrid2 definition from the aspx page?
Thanks!
Casey
0
Hello Jag,
Could you please check out the following example which demonstrates the desired functionality and let me know if it helps you:
http://demos.telerik.com/aspnet-ajax/grid/examples/programming/selectedvalue/defaultcs.aspx
Looking forward for your reply.
All the best,
Radoslav
the Telerik team
Could you please check out the following example which demonstrates the desired functionality and let me know if it helps you:
http://demos.telerik.com/aspnet-ajax/grid/examples/programming/selectedvalue/defaultcs.aspx
Looking forward for your reply.
All the best,
Radoslav
the Telerik team
If you want to get updates on new releases, tips and tricks and sneak peeks at our product labs directly from the developers working on the RadControls for ASP.NET AJAX, subscribe to their blog feed now.
0
SikhSuperman
Top achievements
Rank 1
answered on 24 Oct 2012, 01:09 PM
Thanks Casey and all for the continued help.
I managed to figure out why the _NeedsDataSource event wasn't firing. It was because the grid was getting bound to a datasource early on in code and therefore the _NeedDataSource event need not be fired. I re-set the datasource for the affected grid to an empty datasource and re-ran the code and viola the _NeedsDataSource event fired.
Thanks again folks!!
SS
I managed to figure out why the _NeedsDataSource event wasn't firing. It was because the grid was getting bound to a datasource early on in code and therefore the _NeedDataSource event need not be fired. I re-set the datasource for the affected grid to an empty datasource and re-ran the code and viola the _NeedsDataSource event fired.
Thanks again folks!!
SS
