
<telerik:RadAjaxLoadingPanel ID="RadAjaxLoadingPanelDefault" runat="server"></telerik:RadAjaxLoadingPanel><fieldset> <div> <telerik:RadTreeView ID="TreeViewUnits" runat="server" OnNodeExpand="TreeViewUnits_NodeExpand" onnodecreated="TreeViewUnits_NodeCreated"> <NodeTemplate> <asp:Literal ID="LtrName" runat="server" Text=""></asp:Literal> <%# DataBinder.Eval(Container, "Text") %> <telerik:RadComboBox runat="server" ID="ComboTags" Height="190px" Width="420px" EnableLoadOnDemand="true" HighlightTemplatedItems="true" OnDataBound="ComboTags_DataBound" OnItemDataBound="ComboTags_ItemDataBound" OnItemsRequested="ComboTags_ItemsRequested"> <HeaderTemplate> <ul> <li class="col1">Selected</li> <li class="col2">Tag Name</li> </ul> </HeaderTemplate> <ItemTemplate> <ul> <li class="col1"> <asp:CheckBox ID="CheckTag" runat="server" AutoPostBack="True" oncheckedchanged="CheckTag_CheckedChanged" /></li> <li class="col2"> <%# DataBinder.Eval(Container.DataItem, "Name") %></li> </ul> </ItemTemplate> <FooterTemplate> A total of <asp:Literal runat="server" ID="LtrComboTagsCount" /> items </FooterTemplate> </telerik:RadComboBox> </NodeTemplate> </telerik:RadTreeView> </div></fieldset>protected void Page_Load(object sender, EventArgs e){ if (!Page.IsPostBack) { MyDataBindSections(TreeViewUnits); } RadAjaxManager ajax = RadAjaxManager.GetCurrent(this.Page); ajax.AjaxSettings.AddAjaxSetting(TreeViewUnits, TreeViewUnits, RadAjaxLoadingPanelDefault);}private void MyDataBindSections(RadTreeView radTree){ List<Scope> scopes = SessionHandler.UserSession.Scopes; radTree.Nodes.Clear(); foreach (Scope scope in scopes) { RadTreeNode node = GetUnitNode(scope.Unit, false); radTree.Nodes.Add(node); } }public static RadTreeNode GetUnitNode(Unit unit, bool expand){ RadTreeNode unitNode = new RadTreeNode(); unitNode.Text = unit.Name; unitNode.Attributes.Add("NodeType", "Unit"); RadTreeNode unitTagNode = new RadTreeNode(); unitTagNode.Text = "Tags"; unitTagNode.Attributes.Add("NodeType", "UnitTag"); unitTagNode.Attributes.Add("UnitId", unit.Id.ToString()); unitNode.Nodes.Add(unitTagNode); if (expand) { AddChildUnits(unitNode, unit); unitNode.ExpandMode = TreeNodeExpandMode.ClientSide; } else { unitNode.ExpandMode = TreeNodeExpandMode.ServerSide; } return unitNode;}public static void AddChildUnits(RadTreeNode node, Unit unit){ List<Unit> childUnits = unit.ChildUnits.ToList(); RadTreeNode unitNodeFolder = new RadTreeNode(); unitNodeFolder.Text ="Subunits( " + unit.ChildUnits.Count + " )"; unitNodeFolder.Attributes.Add("NodeType", "UnitFolder"); if (childUnits.Count > 0) { unitNodeFolder.Expanded = true; } node.Nodes.Add(unitNodeFolder); foreach (Unit childUnit in childUnits) { unitNodeFolder.Nodes.Add(GetUnitNode(childUnit, false)); }}protected void TreeViewUnits_NodeExpand(object sender, RadTreeNodeEventArgs e){ RadTreeNode node = e.Node; if (node.Attributes["NodeType"] != null) { if (node.Attributes["NodeType"] == "Unit") { UnitService service = new UnitService(); Unit unit = service.GetUnit(int.Parse(node.Value)); if (!unit.IsLeaf) { AddChildUnits(node, unit); } } node.Expanded = true; }}protected void ComboTags_DataBound(object sender, EventArgs e){ RadComboBox comboTags = sender as RadComboBox; ((System.Web.UI.WebControls.Literal)comboTags.Footer.FindControl("LtrComboTagsCount")).Text = Convert.ToString(comboTags.Items.Count);}protected void ComboTags_ItemDataBound(object sender, Telerik.Web.UI.RadComboBoxItemEventArgs e){ System.Web.UI.WebControls.CheckBox check = e.Item.FindControl("CheckTag") as System.Web.UI.WebControls.CheckBox; check.Attributes["TagId"] = ((Tag)e.Item.DataItem).Id.ToString();}protected void ComboTags_ItemsRequested(object sender, Telerik.Web.UI.RadComboBoxItemsRequestedEventArgs e){ UnitService service = new UnitService(); RadComboBox comboTags = sender as RadComboBox; int unitId = 0; //Find unit id comboTags.DataSource = service.GetTags(unitId); comboTags.DataBind();}protected void TreeViewUnits_NodeCreated(object sender, RadTreeNodeEventArgs e){ if (e.Node.Attributes["NodeType"] == "UnitTag") { e.Node.FindControl("ComboTags").Visible = true; } else { e.Node.FindControl("ComboTags").Visible = false; } e.Node.FindControl("LtrName").Visible = true; ((System.Web.UI.WebControls.Literal)e.Node.FindControl("LtrName")).Text = e.Node.Text;}protected void CheckTag_CheckedChanged(object sender, EventArgs e){ System.Web.UI.WebControls.CheckBox check = sender as System.Web.UI.WebControls.CheckBox; int unitId = 0; //Find unit id int tagId = int.Parse(check.Attributes["TagId"]); UnitService service = new UnitService(); if (check.Checked) { //service.AddTag(unitId, tagId); } else { //service.RemoveTag(unitId, tagId); }}Protected Sub RadGrid1_NeedDataSource(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridNeedDataSourceEventArgs) Handles RadGrid1.NeedDataSource Dim db As New TrackerDataContext db.Log = New System.Diagnostics.DebuggerWriter Dim query = From p In db.posts Where p.parentid = 0 Select p If String.IsNullOrWhiteSpace(RadGrid1.MasterTableView.FilterExpression) = False Then query = query.Where(RadGrid1.MasterTableView.FilterExpression) End If For Each exp As GridSortExpression In RadGrid1.MasterTableView.SortExpressions query = query.OrderBy(String.Format("{0} {1}", exp.FieldName, exp.SortOrder.ToString)) Next Dim start As Integer = RadGrid1.CurrentPageIndex * RadGrid1.PageSize Dim max As Integer = RadGrid1.PageSize RadGrid1.AllowCustomPaging = True 'we always need count RadGrid1.VirtualItemCount = query.Count If isGrouping Or RadGrid1.MasterTableView.GroupByExpressions.Count > 0 Then start = 0 max = RadGrid1.VirtualItemCount RadGrid1.AllowCustomPaging = False End If RadGrid1.DataSource = query.Skip(start).Take(max) End Sub
Private isGrouping As Boolean = FalseProtected Sub RadGrid1_GroupsChanging(ByVal sender As Object, ByVal e As Telerik.Web.UI.GridGroupsChangingEventArgs) Handles RadGrid1.GroupsChanging isGrouping = True If e.Action = GridGroupsChangingAction.Ungroup AndAlso RadGrid1.MasterTableView.GroupByExpressions.Count = 1 Then isGrouping = False End IfEnd SubHi,
I'm kinda new with the radscheduler, but after working really hard at the calender I managed to make everything work.
Only the inlineEditTemplate is impossible to understand for me.
This is my problem : The subject can only have a few values, that's why I want to use a combobox.
But it doesn't matter how I name the field in the InlineEditTemplate, he always use the Text in the Textbox as Subject.
With the Combobox he doesn't do anything :(
Can someone explain me how I can make a very easy inlineedittemplate with 1 combox to change the subject field.
Thnx alot!
<
InlineEditTemplate>
<asp:TextBox runat="server" ID="SubjectTextBox2" Text='<%# Bind("Subject") %>' Width="99%"></asp:TextBox>
status :
<telerik:RadComboBox ID="SubjectTextBox" Runat="server" SelectedValue='<%# Bind("Subject") %>'>
<Items>
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, H00 %>" Value="H00" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, I00 %>" Value="I00" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, I30 %>" Value="I30" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, P00 %>" Value="P00" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, P06 %>" Value="P06" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, P07 %>" Value="P07" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, P08 %>" Value="P08" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, H03 %>" Value="H03" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, P02 %>" Value="P02" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, P46 %>" Value="P46" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, I70 %>" Value="I70" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, N00 %>" Value="N00" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, U00 %>" Value="U00" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, T00 %>" Value="T00" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, O01 %>" Value="O01" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, O03 %>" Value="O03" />
<telerik:RadComboBoxItem runat="server" Text="<%$ Resources:Statussen, O04 %>" Value="O04" />
</Items>
</telerik:RadComboBox>
<asp:LinkButton runat="server" ID="UpdateLinkButton" CommandName="Update" Text="Update"></asp:LinkButton>
<asp:LinkButton runat="server" ID="CancelLinkButton" CommandName="Cancel" Text="Cancel"></asp:LinkButton>
</div>
</InlineEditTemplate>
