or
| protected void AvailableOptions_NodeExpand(object sender, RadTreeNodeEventArgs e) |
| { |
| var selectedOptions = ItemForm.FindControl("SelectedOptions") as RadListBox; |
| var data = service.RetrieveAvailableOptions(e.Node.Value); |
| foreach (var item in data) |
| { |
| if (selectedOptions.FindItemByValue(item.Key) == null) |
| { |
| var node = new RadTreeNode(string.Format("{0} - {1}", item.Key, item.Value), item.Key) { Checked = e.Node.Checked }; |
| e.Node.Nodes.Add(node); |
| } |
| } |
| } |
| function Add_Click() { |
| var availableOptions = $find('<%= ItemForm.FindControl("AvailableOptions").ClientID %>'); |
| var selectedOptions = $find('<%= ItemForm.FindControl("SelectedOptions").ClientID %>'); |
| availableOptions.trackChanges(); |
| selectedOptions.trackChanges(); |
| var checkedNodes = availableOptions.get_checkedNodes(); |
| for (var i = 0; i < checkedNodes.length; i++) { |
| if (checkedNodes[i].get_level() == 1) { |
| var item = selectedOptions.findItemByValue(checkedNodes[i].get_value()); |
| if (item == null) { |
| item = new Telerik.Web.UI.RadListBoxItem(); |
| item.set_text(checkedNodes[i].get_text()); |
| item.set_value(checkedNodes[i].get_value()); |
| selectedOptions.get_items().add(item); |
| } |
| checkedNodes[i].get_parent().get_nodes().remove(checkedNodes[i]); |
| } |
| } |
| for (var i = 0; i < checkedNodes.length; i++) { |
| checkedNodes[i].uncheck(); |
| } |
| selectedOptions.commitChanges(); |
| availableOptions.commitChanges(); |
| } |
| <telerik:RadAjaxManagerProxy runat="server"> |
| <AjaxSettings> |
| <telerik:AjaxSetting AjaxControlID="AvailableOptions"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl ControlID="AvailableOptions" /> |
| <telerik:AjaxUpdatedControl ControlID="SelectedOptions" /> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| </AjaxSettings> |
| </telerik:RadAjaxManagerProxy> |
| protected void RadScheduler1_OnDataBound(object sender, EventArgs e) |
| { |
| //Clear all resources of type 'user': |
| foreach (Resource res in RadScheduler1.Resources.GetResourcesByType("User Name")) |
| { |
| RadScheduler1.Resources.Remove(res); |
| } |
| //Add resources of type 'user' that are in use for the visible range of RadScheduler: |
| foreach (Telerik.Web.UI.Appointment a in RadScheduler1.Appointments.GetAppointmentsInRange(RadScheduler1.VisibleRangeStart, RadScheduler1.VisibleRangeEnd)) |
| { |
| RadScheduler1.Resources.Add(a.Resources.GetResourceByType("User Name")); |
| } |
| } |
After doing more testing I've noticed a problem with the code example I was provided. It appears that for evey entry by a particular user for the given date range it adds that user to the group by view. So in the screen shot I provided Gabe has 9 entries for the week and he is showing up 9 times in the group by view. Here is the code I'm using
| protected void LinqDataSourceUsers_Selected(object sender, LinqDataSourceStatusEventArgs e) |
| { |
| var uir = (List<UserInRole>) e.Result; |
| foreach (var item in uir) |
| { |
| item.User.NomPrenom = item.User.NomPrenom + " (" + new BLLUser().getTempsPlannifieResteAPlannifier(item.IdUser) + ")"; |
| } |
| } |
