aspnet_client/ninerays and FlyTreeView.ClientRuntimePath refer to FlyTreeView for ASP.NET 1.1.
The FlyTreeView for ASP.NET 2.0 runtime files are embedded into the control assembly resources. So it does not require special folder for it.
Will the tree work as a control added to another control that is then added to the web page via the code behind?
Yes. It will. Here's tested code that works. It implements composite control and loads it into the page using two ways.
App_Code/CustomControlWithFlyTreeView.cs:
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using NineRays.WebControls;
namespace MyControls
{
public class CustomControlWithFlyTreeView : Control, INamingContainer
{
protected override void CreateChildControls()
{
Controls.Clear();
base.CreateChildControls();
FlyTreeView ftv = new FlyTreeView();
ftv.ImageSet = FlyTreeViewImageSet.WinXP;
ftv.PostBackOnSelect = true;
ftv.SelectedStyle.BackColor = System.Drawing.Color.Red;
ftv.HoverStyle.BackColor = System.Drawing.Color.Blue;
ftv.Nodes.Add(new FlyTreeNode(\"Node\"));
ftv.Nodes.Add(new FlyTreeNode(\"Node\"));
ftv.Nodes[0].ChildNodes.Add(new FlyTreeNode(\"Node\"));
Controls.Add(ftv);
Controls.Add(new TextBox());
}
}
}