Apr 21, 2009, 9:08 AM
Tree cannt reload in my code
code is:
%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="OA._Default" %>
<%@ Import Namespace="Coolite.Utilities" %>
<%@ Register assembly="Coolite.Ext.Web" namespace="Coolite.Ext.Web" tagprefix="ext" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
<title>test</title>
<link href="../../../../resources/css/examples.css" rel="stylesheet" type="text/css" />
<script type="text/javascript">
//??Tab
function addTab(tabPanel, id,text, url) {
var tab = tabPanel.getComponent(id);
if (!tab) {
var tab = tabPanel.add({
id: id,
title: text,
closable: true,
autoLoad: {
showMask: true,
url: url,
mode: 'iframe',
maskMsg: '???? ' + text + '...'
}
});
}
tabPanel.setActiveTab(tab);
}
function refreshTree(tree) {
Coolite.AjaxMethods.RefreshMenu(
{
success: function(result)
{
var nodes = eval(result);
tree.root.ui.remove()
tree.initChildren(nodes);
tree.root.render();
}
});
}
</script>
</head>
<body>
<form id="form1" runat="server">
<ext:ScriptManager ID="ScriptManager1" runat="server" StateProvider="None" />
</form>
</body>
</html>
.cs code public partial class _Default : System.Web.UI.Page
{
protected TreePanel treeUserOnline;
protected TreePanel treeSysManager;
protected TreePanel treeBuessess;
protected TabPanel TabPanelcenter;
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack && !Ext.IsAjaxRequest)
{
LoadUserOnline();
LoadSysManager();
LoadBusses();
InitGUI();
}
}
protected void InitGUI()
{
//////////////////
// NORTH REGION //
//////////////////
// Make Panel for South Region
Coolite.Ext.Web.Panel north = new Coolite.Ext.Web.Panel();
north.ID = "NorthPanel";
north.Title = "??????";
north.Height = Unit.Pixel(100);
north.BodyStyle = "padding:1px;";
north.Collapsible = false;
/////////////////
// WEST REGION //
/////////////////
// Make Panel for West Region
Coolite.Ext.Web.Panel west = new Coolite.Ext.Web.Panel();
west.ID = "WestPanel";
west.Title = "????";
west.Width = Unit.Pixel(225);
// Make TabPanel for west Panel
TabPanel tpEast = new TabPanel();
tpEast.ActiveTabIndex = 2;
tpEast.TabPosition = TabPosition.Bottom;
tpEast.Border = false;
tpEast.Height = 500;
// Make Tab 1
Tab tabEast1 = new Tab();
tabEast1.Title = "????";
tabEast1.Border = false;
tabEast1.BodyStyle = "padding:1px;";
FitLayout fittreeUserOnline = new FitLayout();
fittreeUserOnline.Items.Add(treeUserOnline);
// Add Treepanel to tab
tabEast1.BodyControls.Add(fittreeUserOnline);
// Make Tab 2
Tab tabEast2 = new Tab();
tabEast2.Title = "????";
tabEast2.Border = false;
tabEast2.BodyStyle = "padding:1px;";
FitLayout fittreeSysmanager = new FitLayout();
fittreeSysmanager.Items.Add(treeSysManager);
// Add Treepanel to tab
tabEast2.BodyControls.Add(fittreeSysmanager);
// Make Tab treeSysManager
Tab tabEast3 = new Tab();
tabEast3.Title = "????";
tabEast3.Border = false;
tabEast3.BodyStyle = "padding:1px;";
FitLayout fittreeBessuess = new FitLayout();
fittreeBessuess.Items.Add(treeBuessess);
// Add Treepanel to tab
tabEast3.BodyControls.Add(fittreeBessuess);
// Add FitLayout container to East Panel
// Add Tab's to East TabPanel
tpEast.Tabs.Add(tabEast1);
tpEast.Tabs.Add(tabEast2);
tpEast.Tabs.Add(tabEast3);
// tpEast.SetActiveTab(2);
// Make new FitLayout container
FitLayout fit = new FitLayout();
// Add TabPanel East to FitLayout
fit.Items.Add(tpEast);
west.BodyControls.Add(fit);
///////////////////
// CENTER REGION //
///////////////////
// Make TabPanel for Center Region
TabPanelcenter = new TabPanel();
TabPanelcenter.ID = "TabPanelcenter";
TabPanelcenter.ActiveTabIndex = 0;
// Make Tab
Tab tab1 = new Tab();
tab1.ID = "MyDesktop";
tab1.Title = "????";
tab1.Border = false;
tab1.BodyStyle = "padding:1px;";
//tab1.Items.Add(tree);
Toolbar toolbar = new Toolbar();
Coolite.Ext.Web.Button button1 = new Coolite.Ext.Web.Button();
button1.Icon = Icon.Connect;
ToolTip tooltip = new ToolTip();
tooltip.Title = "Rich ToolTips";
tooltip.Html = "Let your users know what they can do!";
button1.ToolTips.Add(tooltip);
Coolite.Ext.Web.Button button2 = new Coolite.Ext.Web.Button();
button2.Icon = Icon.UserAdd;
button2.AjaxEvents.Click.Event += new ComponentAjaxEvent.AjaxEventHandler(Click_Event); //= "Coolite.AjaxMethods.SetTimeStamp();";
Coolite.Ext.Web.Button button3 = new Coolite.Ext.Web.Button();
button3.Icon = Icon.UserDelete;
toolbar.Items.Add(button1);
toolbar.Items.Add(button2);
toolbar.Items.Add(button3);
TabPanelcenter.BottomBar.Add(toolbar);
// Add Tab's to TabPanel
TabPanelcenter.Tabs.Add(tab1);
//////////////
// VIEWPORT //
//////////////
// Make BorderLayout container for ViewPort
BorderLayout layout = new BorderLayout();
// Set North Region properties
layout.North.Split = true;
layout.North.Collapsible = true;
// Set West Region properties
layout.West.MinWidth = Unit.Pixel(225);
layout.West.MaxWidth = Unit.Pixel(400);
layout.West.Split = true;
layout.West.Collapsible = true;
// Set East Region properties
layout.East.MinWidth = Unit.Pixel(225);
layout.East.Split = true;
layout.East.Collapsible = true;
// Set South Region properties
layout.South.Split = true;
layout.South.Collapsible = true;
// Add Panels to BorderLayout Regions
layout.North.Items.Add(north);
layout.West.Items.Add(west);
layout.Center.Items.Add(TabPanelcenter);
// Make ViewPort to fold everything
ViewPort vp = new ViewPort();
vp.ID = "ViewPort1";
// Add BorderLayout to ViewPort
vp.BodyControls.Add(layout);
// Add ViewPort to Form
this.form1.Controls.Add(vp);
}
protected Coolite.Ext.Web.TreeNodeCollection LoadUserOnline()
{
treeUserOnline = new TreePanel();
treeUserOnline.ID = "TreeUserOnline";
treeUserOnline.Title = "????";
treeUserOnline.RootVisible = false;
treeUserOnline.Tools.Add(new Tool(ToolType.Refresh, "refreshTree(#{TreeUserOnline});", ""));
Coolite.Ext.Web.TreeNodeCollection nodes = new Coolite.Ext.Web.TreeNodeCollection();
return BuildTree(treeUserOnline.Root);
}
private Coolite.Ext.Web.TreeNodeCollection BuildTree(Coolite.Ext.Web.TreeNodeCollection nodes)
{
if (nodes == null)
{
nodes = new Coolite.Ext.Web.TreeNodeCollection();
}
Coolite.Ext.Web.TreeNode root = new Coolite.Ext.Web.TreeNode();
root.Text = "Root";
nodes.Add(root);
string prefix = DateTime.Now.Second + "_";
for (int i = 0; i < 10; i++)
{
Coolite.Ext.Web.TreeNode node = new Coolite.Ext.Web.TreeNode();
node.Text = prefix + i; root.Nodes.Add(node);
}
return nodes;
}
protected void LoadSysManager()
{
treeSysManager = new TreePanel();
treeSysManager.ID = "TreeSysManager";
treeSysManager.Title = "????";
treeSysManager.RootVisible = false;
treeSysManager.Tools.Add(new Tool(ToolType.Refresh, "Ext.Msg.alert('Message','Refresh Tool Clicked!');", ""));
Coolite.Ext.Web.TreeNode root = new Coolite.Ext.Web.TreeNode();
root.NodeID = "root";
treeSysManager.Root.Add(root);
Coolite.Ext.Web.TreeNode node1 = new Coolite.Ext.Web.TreeNode();
node1.Text = "Friends";
node1.Expanded = true;
Coolite.Ext.Web.TreeNode treeNode = new Coolite.Ext.Web.TreeNode();
treeNode.Text = "????";
treeNode.NodeID = "11121";
treeNode.Icon = Icon.ApplicationXp;
// treeNode.Href = "http://localhost:2313/desktop.aspx";
// treeNode.HrefTarget = "Panel11";
// temp.Listeners.Click.Handler = "addTab(TabPanel1, this.id, this.id);"; //?????TabPanel???
treeNode.Listeners.Click.Handler = "addTab(TabPanelcenter,this.id,this.text,'oa.aspx');";
treeNode.Leaf = true;
node1.Nodes.Add(treeNode);
node1.Nodes.Add(treeNode);
node1.Nodes.Add(treeNode);
node1.Nodes.Add(treeNode);
node1.Nodes.Add(treeNode);
node1.Nodes.Add(treeNode);
node1.Nodes.Add(treeNode);
root.Nodes.Add(node1);
Coolite.Ext.Web.TreeNode node2 = new Coolite.Ext.Web.TreeNode();
node2.Text = "Family";
node2.Expanded = true;
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("Kelly", Icon.UserFemale));
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("Sara", Icon.UserFemale));
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("Zack", Icon.UserGreen));
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("John", Icon.UserGreen));
root.Nodes.Add(node2);
}
protected void LoadBusses()
{
treeBuessess = new TreePanel();
treeBuessess.ID = "treeBuessess";
treeBuessess.Title = "????";
treeBuessess.RootVisible = false;
Coolite.Ext.Web.TreeNode root = new Coolite.Ext.Web.TreeNode();
root.NodeID = "root";
treeBuessess.Root.Add(root);
Coolite.Ext.Web.TreeNode node1 = new Coolite.Ext.Web.TreeNode();
node1.Text = "Friends";
node1.Expanded = true;
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Jack", Icon.User));
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Brian", Icon.User));
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Jon", Icon.User));
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Tim", Icon.User));
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Nige", Icon.User));
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Fred", Icon.User));
node1.Nodes.Add(new Coolite.Ext.Web.TreeNode("Bob", Icon.User));
root.Nodes.Add(node1);
Coolite.Ext.Web.TreeNode node2 = new Coolite.Ext.Web.TreeNode();
node2.Text = "Family";
node2.Expanded = true;
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("Kelly", Icon.UserFemale));
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("Sara", Icon.UserFemale));
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("Zack", Icon.UserGreen));
node2.Nodes.Add(new Coolite.Ext.Web.TreeNode("John", Icon.UserGreen));
root.Nodes.Add(node2);
}
void Click_Event(object sender, AjaxEventArgs e)
{
this.ScriptManager1.AddScript("alert('AjaxEvent: UserParam');");
}
[AjaxMethod]
public string RefreshMenu()
{
Coolite.Ext.Web.TreeNodeCollection nodes = this.BuildTree(null);
return nodes.ToJson();
}