So I'm binding the data to the treelist via datatable. It defintely has data (over 2000 rows), and I'm using the needsdatasource event handler to bind. It must be recognizing SOMETHING because after it binds, the column names from the data appear in the list it just show no data. VS 2015 is that makes a difference. Code below:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="xxx.aspx.cs" Inherits="xxx.xxx.xxx" %><%@ Register Assembly="Telerik.Web.UI" Namespace="Telerik.Web.UI" TagPrefix="telerik" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head runat="server"> <meta http-equiv="X-UA-Compatible" content="IE=edge"/> <title></title></head><body> <form id="form1" runat="server"> <telerik:RadScriptManager ID="RadScriptManager1" runat="server"></telerik:RadScriptManager> <div> <div> <telerik:RadDateTimePicker runat="server" ID="datePicker" Width="175px"></telerik:RadDateTimePicker><asp:Button runat="server" ID="btnLoad" Text="Load" OnClick="btnLoad_Click" /><asp:Button runat="server" ID="btnExport" OnClick="btn_Export_Click" Text="Export To Excel" /><br /> <telerik:RadTreeList ID="RadTreeList1" runat="server" AllowPaging="true" PageSize="3" DataKeyNames="USERID" OnNeedDataSource="RadTreeList1_NeedDataSource" ParentDataKeyNames="CustomerID"> </telerik:RadTreeList> </div> </div> </form></body></html>using System;using System.Collections.Generic;using System.Configuration;using System.Data;using System.Data.SqlClient;using System.Linq;using System.Web;using System.Web.UI;using System.Web.UI.WebControls;using Telerik.Web.UI;namespace xxx.xxx{ public partial class Tracker : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { datePicker.SelectedDate = DateTime.Now; } protected void RadTreeList1_NeedDataSource(object sender, Telerik.Web.UI.TreeListNeedDataSourceEventArgs e) { var dt = GetDataSource(); RadTreeList1.DataSource = dt; } protected void btnLoad_Click(object o,EventArgs e) { RadTreeList1.Rebind(); } protected void btn_Export_Click(object o,EventArgs e) { RadTreeList1.ExportSettings.Excel.Format = TreeListExcelFormat.Biff; RadTreeList1.ExportToExcel(); } public DataTable GetDataSource() { var dt = new DataTable(); var strQuery = ""; strQuery += " select "; strQuery += " USERID [CustomerID]"; strQuery += ", USERID "; strQuery += ", FileInput"; strQuery += ", MeterNo "; strQuery += ", MeterName "; strQuery += " ,LastReadTime "; strQuery += " from xx i "; strQuery += " JOIN xxx u ON u.CustomerID = i.USERID "; strQuery += " where ConnectionDevice = 18 AND isActive=1"; strQuery += " and u.isParent = 1 "; strQuery += " AND Time<@Time "; strQuery += " order by userid,fileinput,meterno"; using (var con = new SqlConnection(ConfigurationManager.ConnectionStrings["xxx"].ConnectionString)) { con.Open(); var cmd = new SqlDataAdapter(strQuery, con); cmd.SelectCommand.Parameters.AddWithValue("@Time", "11/1/2015"); cmd.Fill(dt); } return dt; } }}Like I said it displays the treelist with all the columns from the query and corresponding datatable fine, but it's not displaying any data despite having 2000+records.