hi all,
i have a grid, which the EditFormType is set to WebUserControl. On edit i need a combobox that contains a treeview, so i followed this example http://demos.telerik.com/aspnet-ajax/treeview/examples/functionality/treeviewcombobox/defaultcs.aspx?product=treeview
the problem is that when i select a node from the combobox it doesn't respond at the first time, i need to re-select a node again
here is my code
wht would be causing it??
any hint is really appreciated
i have a grid, which the EditFormType is set to WebUserControl. On edit i need a combobox that contains a treeview, so i followed this example http://demos.telerik.com/aspnet-ajax/treeview/examples/functionality/treeviewcombobox/defaultcs.aspx?product=treeview
the problem is that when i select a node from the combobox it doesn't respond at the first time, i need to re-select a node again
here is my code
<%@ Control Language="vb" AutoEventWireup="false" CodeBehind="Edit.ascx.vb" Inherits="UCMS.LinksEdit" %> |
<%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %> |
<telerik:RadScriptBlock ID="RadScriptBlock1" runat="server"> |
<script type="text/javascript"> |
function OpenFileExplorerDialog() |
{ |
var wnd = $find("<%= ExplorerWindow.ClientID %>"); |
wnd.show(); |
} |
//This function is called from the Explorer.aspx page |
function OnFileSelected(wnd, fileSelected) |
{ |
var textbox = $get("<%= fileName.ClientID %>"); |
textbox.value = fileSelected; |
} |
function nodeClicking(sender, args) |
{ |
var comboBox = $find("<%= RadComboBox1.ClientID %>"); |
var node = args.get_node() |
comboBox.set_text(node.get_text()); |
comboBox.trackChanges(); |
comboBox.get_items().getItem(0).set_value(node.get_text()); |
comboBox.commitChanges(); |
comboBox.hideDropDown(); |
} |
function StopPropagation(e) |
{ |
if(!e) |
{ |
e = window.event; |
} |
e.cancelBubble = true; |
} |
function OnClientDropDownOpenedHandler(sender, eventArgs) |
{ |
var tree = sender.get_items().getItem(0).findControl("RadTreeView1"); |
var selectedNode = tree.get_selectedNode(); |
if (selectedNode) |
{ |
selectedNode.scrollIntoView(); |
} |
} |
</script> |
</telerik:RadScriptBlock> |
<telerik:RadWindow runat="server" Width="550px" Height="560px" VisibleStatusbar="false" |
NavigateUrl="/Components/Links/Explorer.aspx" ID="ExplorerWindow" Modal="true" Behaviors="Close,Move"> |
</telerik:RadWindow> |
<telerik:RadFormDecorator ID="FormDecorator1" runat="server" DecoratedControls="all" Skin="Default"></telerik:RadFormDecorator> |
<br /> |
<table cellpadding="3" cellspacing="0" border="0" width="100%"> |
<tr> |
<td width="12%">Title:</td> |
<td width="88%"> |
<telerik:RadTextBox ID="txtTitle" runat="server" Text='<%# DataBinder.Eval(Container, "DataItem.title") %>'></telerik:RadTextBox> |
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" ControlToValidate="txtTitle" ErrorMessage="*" runat="server" Display="Dynamic"></asp:RequiredFieldValidator> |
<asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="This title is already used" ControlToValidate="txtTitle" Display="Dynamic" OnServerValidate="checkTitle"></asp:CustomValidator> |
</td> |
</tr> |
<tr> |
<td>Link to:</td> |
<td> |
<telerik:RadComboBox ID="RadComboBox2" runat="server" MarkFirstMatch="true" AutoPostBack="true"> |
<Items> |
<telerik:RadComboBoxItem Text="Select type" Value="0" /> |
<telerik:RadComboBoxItem Text="Page on the website" Value="1" /> |
<telerik:RadComboBoxItem Text="File on the website" Value="2" /> |
<telerik:RadComboBoxItem Text="External URL" Value="3" /> |
</Items> |
</telerik:RadComboBox> |
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" ControlToValidate="RadComboBox2" ErrorMessage="*" runat="server" Display="Dynamic" InitialValue="Select type"></asp:RequiredFieldValidator> |
</td> |
</tr> |
<tr id="trPages" runat="server" visible="true"> |
<td>Destination:</td> |
<td> |
<div> |
<telerik:RadComboBox ID="RadComboBox1" runat="server" Height="140px" Width="215px" |
ShowToggleImage="True" Style="vertical-align: middle;" OnClientDropDownOpened="OnClientDropDownOpenedHandler" |
EmptyMessage="Choose a destination" ExpandAnimation-Type="None" CollapseAnimation-Type="None"> |
<ItemTemplate> |
<div id="div1"> |
<telerik:RadTreeView runat="server" ID="RadTreeView1" OnClientNodeClicking="nodeClicking" Height="138px" Width="212px"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Africa" Expanded="true"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Egypt"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Cairo"> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="South Africa"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Cape Town"> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Kenya"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Nairobi" Value="1999"> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="North America" Expanded="true"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="USA"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="New York"> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Los Angeles"> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Boston"> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Canada"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Toronto"> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Ottawa"> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Vancouver"> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Mexico"> |
<Nodes> |
<telerik:RadTreeNode runat="server" Text="Mexico City"> |
</telerik:RadTreeNode> |
<telerik:RadTreeNode runat="server" Text="Cancun"> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeNode> |
</Nodes> |
</telerik:RadTreeView> |
</div> |
</ItemTemplate> |
<Items> |
<telerik:RadComboBoxItem Text="" /> |
</Items> |
</telerik:RadComboBox> |
<script type="text/javascript"> |
var div1 = document.getElementById("div1"); |
div1.onclick = StopPropagation; |
</script> |
<asp:RequiredFieldValidator runat="server" ID="RequiredFieldValidator3" ErrorMessage="Choose a destination first" ControlToValidate="RadComboBox1" /> |
</div> |
</td> |
</tr> |
<tr id="trFiles" runat="server" visible="false"> |
<td></td> |
<td> |
<asp:TextBox ID="fileName" runat="server" Width="350px"></asp:TextBox> |
<asp:Button ID="selectFile" OnClientClick="OpenFileExplorerDialog(); return false;" Text="Browse" runat="server" /> |
</td> |
</tr> |
<tr id="trURL" runat="server" visible="false"> |
<td></td> |
<td> |
<telerik:RadTextBox ID="txtURL" runat="server" Width="350px" Text="http://"></telerik:RadTextBox> |
</td> |
</tr> |
<tr> |
<td>Start Date:</td> |
<td> |
<telerik:RadDatePicker ID="RadDatePicker1" runat="server" ></telerik:RadDatePicker> |
<asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="RadDatePicker1" ErrorMessage="Date can't be earlier than today" Operator="GreaterThanEqual" Type="Date" ValueToCompare='<%# DateTime.Now.ToShortDateString() %>' Display="Dynamic"></asp:CompareValidator> |
</td> |
</tr> |
<tr> |
<td>End Date:</td> |
<td> |
<telerik:RadDatePicker ID="RadDatePicker2" runat="server"></telerik:RadDatePicker> |
<asp:CompareValidator ID="CompareValidator2" runat="server" ControlToValidate="RadDatePicker2" ErrorMessage="End date can't be earlier than today or earlier than start date" Operator="GreaterThanEqual" Type="Date" ValueToCompare='<%# DateTime.Now.ToShortDateString() %>' ControlToCompare="RadDatePicker1" Display="Dynamic"></asp:CompareValidator> |
</td> |
</tr> |
<tr> |
<td>Publish:</td> |
<td> |
<asp:CheckBox ID="CheckBox1" runat="server" /> |
</td> |
</tr> |
<tr> |
<td>Category:</td> |
<td> |
<telerik:RadComboBox ID="RadComboBox3" runat="server" MarkFirstMatch="true" OnLoad="RadComboBox3_Load" DataTextField="categoryName" DataValueField="categoryID" SelectedValue='<%# DataBinder.Eval(Container, "DataItem.categoryID") %>' AppendDataBoundItems="true"></telerik:RadComboBox> |
<asp:RequiredFieldValidator ID="RequiredFieldValidator6" ControlToValidate="RadComboBox3" ErrorMessage="*" runat="server" Display="Dynamic" InitialValue="Select category"></asp:RequiredFieldValidator> |
</td> |
</tr> |
<tr> |
<td align="right" colspan="2"> |
<asp:ImageButton ID="btnUpdate" runat="server" CommandName="Update" Visible='<%# Not (TypeOf DataItem Is Telerik.Web.UI.GridInsertionObject) %>' ImageUrl="/Themes/images/Update.gif" /> |
<asp:ImageButton ID="btnInsert" runat="server" CommandName="PerformInsert" Visible='<%# (TypeOf DataItem Is Telerik.Web.UI.GridInsertionObject) %>' ImageUrl="/Themes/images/Update.gif" /> |
<asp:ImageButton ID="btnCancel" runat="server" CommandName="Cancel" CausesValidation="false" ImageUrl="/Themes/images/Cancel.gif" /> |
</td> |
</tr> |
</table> |
wht would be causing it??
any hint is really appreciated