function __doPostBack(eventTarget, eventArgument) { if (!theForm.onsubmit || (theForm.onsubmit() != false)) { theForm.__EVENTTARGET.value = eventTarget; theForm.__EVENTARGUMENT.value = eventArgument; theForm.submit(); }Sys.Application.add_init(function() { $create(Telerik.Web.UI.RadMaskedTextBox, {"_enableOldBoxModel":false,"_focused":false,"_initialMasks":[new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadLiteralMaskPart('.'),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadLiteralMaskPart('.'),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadLiteralMaskPart('-'),new Telerik.Web.UI.RadDigitMaskPart(),new Telerik.Web.UI.RadDigitMaskPart()],"_originalValue":"___.___.___-__","_shouldResetWidthInPixels":true,"clientStateFieldID":"login_ClientState","enabled":true,"styles":{HoveredStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riHover text"],InvalidStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riError text"],DisabledStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riDisabled text"],FocusedStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riFocused text"],EmptyMessageStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riEmpty text"],ReadOnlyStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riRead text"],EnabledStyle: ["font-family:Arial;font-size:13px;width:300px;", "riTextBox riEnabled text"]}}, null, null, $get("login"));});<?xml version="1.0" encoding="ISO-8859-1"?><globalization requestEncoding="ISO-8859-1" responseEncoding="ISO-8859-1" culture="pt-BR" uiCulture="pt-BR" /><Telerik: Mask RadMaskedTextBox ="###.###.###-##" id = "login" CssClass = "text" runat = "server"TabIndex = "1" WIDTH = "300"></ Telerik: RadMaskedTextBox>| Private Sub radgPayRequest_ItemCommand(ByVal source As Object, ByVal e As GridCommandEventArgs) Handles radgPayRequest.ItemCommand |
| If LCase(e.CommandName) = LCase("AddNewPaymentRequest") Then |
| 'Set the cache values to pass to the window |
| Common.Cache.CacheSiteInfo.Cache_PageMode = EnumUI.PageMode.AddNew |
| 'Open the radwindow |
| Call RadWindowSettings_AdminPilotPayRequest() |
| End If |
| End Sub |
| Private Sub RadWindowSettings_AdminPilotPayRequest() |
| Dim rwPilotPayRequest As New RadWindow |
| rwPilotPayRequest.InitialBehaviors = WindowBehaviors.None |
| rwPilotPayRequest.NavigateUrl = "Pilot/AdminPilotPayRequest.aspx" |
| rwPilotPayRequest.Height = System.Web.UI.WebControls.Unit.Pixel(500) |
| rwPilotPayRequest.Width = System.Web.UI.WebControls.Unit.Pixel(725) |
| rwPilotPayRequest.VisibleStatusbar = False |
| rwPilotPayRequest.Modal = False |
| rwPilotPayRequest.Behaviors = WindowBehaviors.Close |
| rwPilotPayRequest.DestroyOnClose = True |
| rwPilotPayRequest.VisibleOnPageLoad = True |
| radwWindowMan.Windows.Add(rwPilotPayRequest) |
| End Sub |
| Private Sub btnSave_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnSave.Click |
| Try |
| 'We run the save event here, which saves the data correctly to the database |
| 'Close the window |
| ClientScript.RegisterStartupScript(Page.GetType](), "CloseWindow", "<script language=""javascript"">CloseRadWindow();</script>") |
| End Try |
| End Sub |
| function GetRadWindow() |
| { |
| var oWindow = null; |
| if (window.radWindow) oWindow = window.radWindow; |
| else if (window.frameElement.radWindow) oWindow = window.frameElement.radWindow; |
| return oWindow; |
| } |
| function CloseRadWindow() |
| { |
| var oWindow = GetRadWindow(); |
| oWindow.Close(); |
| } |
| <telerik:RadCodeBlock ID="RadCodeBlock1" runat="server"> |
| <script TYPE="text/javascript"> |
| function refreshGrid(arg) |
| { |
| if(!arg) |
| { |
| $find("<%=radaManager.ClientID %>").ajaxRequest("Rebind"); |
| } |
| else |
| { |
| $find("<%=radaManager.ClientID %>").ajaxRequest("RebindAndNavigate"); |
| } |
| } |
| </script> |
| </telerik:RadCodeBlock> |
| <telerik:RadAjaxManager ID="radaManager" RUNAT="server" OnAjaxRequest="radaManager_AjaxRequest"> |
| <AjaxSettings> |
| <telerik:AjaxSetting AJAXCONTROLID="radaManager"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl CONTROLID="radgPayRequest"></telerik:AjaxUpdatedControl> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| <telerik:AjaxSetting AJAXCONTROLID="radgPayRequest"> |
| <UpdatedControls> |
| <telerik:AjaxUpdatedControl CONTROLID="radgPayRequest"></telerik:AjaxUpdatedControl> |
| </UpdatedControls> |
| </telerik:AjaxSetting> |
| </AjaxSettings> |
| </telerik:RadAjaxManager> |
| Protected Sub radaManager_AjaxRequest(ByVal sender As Object, ByVal e As AjaxRequestEventArgs) Handles radaManager.AjaxRequest |
| Select Case e.Argument |
| Case "Rebind" |
| radgPayRequest.MasterTableView.SortExpressions.Clear() |
| radgPayRequest.MasterTableView.GroupByExpressions.Clear() |
| radgPayRequest.MasterTableView.Rebind() |
| Case "RebindAndNavigate" |
| radgPayRequest.MasterTableView.SortExpressions.Clear() |
| radgPayRequest.MasterTableView.GroupByExpressions.Clear() |
| radgPayRequest.MasterTableView.Rebind() |
| End Select |
| End Sub |
| Protected Overrides Sub RaisePostBackEvent(ByVal sourceControl As IPostBackEventHandler, ByVal eventArgument As String) |
| MyBase.RaisePostBackEvent(sourceControl, eventArgument) |
| If TypeOf sourceControl Is RadAjaxManager Then |
| Select Case eventArgument |
| Case "Rebind" |
| radgPayRequest.MasterTableView.SortExpressions.Clear() |
| radgPayRequest.MasterTableView.GroupByExpressions.Clear() |
| radgPayRequest.MasterTableView.Rebind() |
| Case "RebindAndNavigate" |
| radgPayRequest.MasterTableView.SortExpressions.Clear() |
| radgPayRequest.MasterTableView.GroupByExpressions.Clear() |
| radgPayRequest.MasterTableView.Rebind() |
| End Select |
| End If |
| End Sub 'RaisePostBackEvent |
<rad:RadGrid id="RadGrid1" OnItemCreated="RadGrid1_ItemCreated" OnPreRender="RadGrid1_PreRender" OnItemCommand="RadGrid1_ItemCommand" ShowStatusBar="true" runat="server" AllowPaging="False" AllowSorting="True" AllowMultiRowSelection="True" AutoGenerateColumns="false" ClientSettings-Resizing-ResizeGridOnColumnResize="false" EnablePostBackOnRowClick="true" Width="100%" Height="92%" Skin="Windows7" AllowFilteringByColumn="true" EnableLinqExpressions="false"> <MasterTableView PageSize="10" Width="100%" TableLayout="Fixed" EnableViewState="false"> <Columns> <rad:GridTemplateColumn UniqueName="CheckBoxTemplateColumn" HeaderStyle-Width="10%" HeaderStyle-HorizontalAlign="Center" AllowFiltering="false"> <HeaderTemplate> <asp:CheckBox id="headerChkbox" Text="Select All" OnCheckedChanged="ToggleSelectedState" AutoPostBack="True" runat="server"></asp:CheckBox> </HeaderTemplate> <ItemTemplate > <asp:CheckBox id="CheckBox1" OnCheckedChanged="ToggleRowSelection" AutoPostBack="True" runat="server" Width="65"></asp:CheckBox> </ItemTemplate> </rad:GridTemplateColumn> <rad:GridBoundColumn DataField="DISCUSSION" DataType="System.String" HeaderText="Discussion" Visible="False" UniqueName="DISCUSSION"> <ItemStyle /> </rad:GridBoundColumn> <rad:GridBoundColumn DataField="KEY" DataType="System.String" HeaderText="ID" Visible="True" UniqueName="KEY" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" AllowFiltering="false"> <ItemStyle /> </rad:GridBoundColumn> <rad:GridBoundColumn DataField="NAME" DataType="System.String" HeaderText="Name" UniqueName="NAME" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="40%" AllowFiltering="false"> <ItemStyle /> </rad:GridBoundColumn> <rad:GridBoundColumn DataField="STATUS" DataType="System.String" HeaderText="Status" UniqueName="STATUS" SortExpression="STATUS" ShowSortIcon="true" HeaderStyle-HorizontalAlign="Center" ItemStyle-HorizontalAlign="Center" HeaderStyle-Width="10%" AllowFiltering="true" AutoPostBackOnFilter="true" > <ItemStyle /> <FilterTemplate> <rad:RadComboBox ID="RadComboBoxStatus" OnSelectedIndexChanged="FilterCombo_SelectedIndexChanged" DataTextField="STATUS" AutoPostBack="true" DataValueField="STATUS" Width="70px" runat="server" AppendDataBoundItems="true"> <Items> <rad:RadComboBoxItem Text="All" Value="All" /> <rad:RadComboBoxItem Text="Active" Value="Active"/>
<rad:RadComboBoxItem Text="Working" Value="Working" /> </Items> </rad:RadComboBox> </FilterTemplate> </rad:GridBoundColumn> </Columns> </MasterTableView> <ClientSettings EnableRowHoverStyle="true" Resizing-AllowColumnResize="true" Resizing-AllowRowResize="true" Resizing-EnableRealTimeResize ="false" Resizing-ResizeGridOnColumnResize="false" Resizing-ClipCellContentOnResize ="false"> <Scrolling AllowScroll ="true" UseStaticHeaders="true" /> <ClientEvents OnColumnResized="OnColumnResized" /> </ClientSettings> <PagerStyle Mode="Slider"></PagerStyle> </rad:RadGrid>protected void FilterCombo_SelectedIndexChanged(object o, RadComboBoxSelectedIndexChangedEventArgs e) { string filterExpression; filterExpression = "([STATUS] = \'" + e.Text + "\')"; RadGrid1.MasterTableView.FilterExpression = filterExpression; RadGrid1.MasterTableView.Rebind(); }for(var i=0; i< menuItems.length; i++){ var item = menuItems[i]; var newItem = new Telerik.Web.UI.RadMenuItem(); //Create a new Menu Item newItem.set_text(item.Text); newItem.set_value(item.Value); newItem.set_expandMode(item.ExpandMode); newItem.set_navigateUrl(item.NavigateUrl); _menu.get_items().add(newItem); //Add the item to the collection }I have followed this simple example and implemented similarly:-
http://www.telerik.com/help/aspnet-ajax/tree_databindinghierarchical.html
The problem:- GetDataSet() method returns a DataSet with the complete Ques table with all the rows and columns(QuesID,QuesParentID,QuesAns,Active,QuesTypeID and so on)
Now the probelm is that the RadTreeview is not binding well. Like The root node displays Questions but the the child nodes are not displaying the correspoding answer. Also, some root nodes do not have a child node at all. Those root nodes that DO have a child node are displaying Questions as their text and not Answers. I surmise it's something wrong with the BindTree() method only. What could it be? I mean RADTreeView is implemented in a very simple manner in that link above. I only followed accordingly. What is wrong??
aspx page;-
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<telerik:RadTreeView runat="server" ID="tree1" OnNodeDataBound="tree1_NodeDataBound"></telerik:RadTreeView>
</asp:Content>
Code Behind :-
public partial class TestTree :
System.Web.UI.Page {
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindTree(tree1);
}
}
private DataSet GetDataSet()
{
bllQues objbllQues = new bllQues();
var ds = new DataSet();
return objbllQues.GetQues();
}
protected void BindTree(RadTreeView treeView)
{
DataSet ds = new DataSet();
ds = GetDataSet();
tree1.DataTextField = "Ques";
tree1.DataValueField = "QuesAns";
tree1.DataFieldID = "QuesID";
tree1.DataFieldParentID = "QuesParentID";
tree1.DataSource = ds;
tree1.DataBind();
}
protected void tree1_NodeDataBound(object sender,
RadTreeNodeEventArgs e)
{
e.Node.ToolTip = (e.Node.DataItem as
DataRowView)["QuesAns"].ToString();
} }