Jun 19, 2012, 10:04 AM
checkbox TreePanel problems
I through some method . TreePanel checkbox check, however, I am getting a check value when it prompts no value, what method can be solved, I use the Ext.net2.X
this my method:
//刷新树
private NodeCollection BuildTree(NodeCollection Updatenodes, string id)
{
Updatenodes = new NodeCollection();
//获取当前部门
Node treeNodeRoot = new Node();
treeNodeRoot.NodeID = "-1";
treeNodeRoot.Text = "所有部门";
treeNodeRoot.Expanded = true;
//把当前id传入
DeptnodeHas(treeNodeRoot, -1,id);
Updatenodes.Add(treeNodeRoot);
return Updatenodes;
}
//循环部门子节点
public void DeptnodeHas(Node nd, int upid, string id)
{
DataTable dt;
DeptmentItemImpl dept = new DeptmentItemImpl(upid);
dt = dept.SubItemList();
for (int i = 0; i < dt.Rows.Count; i++)
{
Node treeNode = new Node();
treeNode.NodeID = dt.Rows[i]["id"].ToString();
treeNode.Text = dt.Rows[i]["name"].ToString();
if (treeNode.NodeID == id)
{
treeNode.Checked = true;
if (Convert.ToInt32(dt.Rows[i]["RootFlag"].ToString()) != 1)
{
treeNode.Leaf = true;
}
}
else
{
if (Convert.ToInt32(dt.Rows[i]["RootFlag"].ToString()) != 1)
{
treeNode.Leaf = true;
}
treeNode.Checked = false;
}
treeNode.Expanded = true;
DeptnodeHas(treeNode, Convert.ToInt32(dt.Rows[i]["id"].ToString()), id);
nd.Children.Add(treeNode);
}
}
[DirectMethod]
public string RefreshMenu()
{
NodeCollection nodes = this.BuildTree(null);
return nodes.ToJson();
}
But ,why this is value is NUll.
this.TreePanel1.CheckedNodes == null?
this my method:
//刷新树
private NodeCollection BuildTree(NodeCollection Updatenodes, string id)
{
Updatenodes = new NodeCollection();
//获取当前部门
Node treeNodeRoot = new Node();
treeNodeRoot.NodeID = "-1";
treeNodeRoot.Text = "所有部门";
treeNodeRoot.Expanded = true;
//把当前id传入
DeptnodeHas(treeNodeRoot, -1,id);
Updatenodes.Add(treeNodeRoot);
return Updatenodes;
}
//循环部门子节点
public void DeptnodeHas(Node nd, int upid, string id)
{
DataTable dt;
DeptmentItemImpl dept = new DeptmentItemImpl(upid);
dt = dept.SubItemList();
for (int i = 0; i < dt.Rows.Count; i++)
{
Node treeNode = new Node();
treeNode.NodeID = dt.Rows[i]["id"].ToString();
treeNode.Text = dt.Rows[i]["name"].ToString();
if (treeNode.NodeID == id)
{
treeNode.Checked = true;
if (Convert.ToInt32(dt.Rows[i]["RootFlag"].ToString()) != 1)
{
treeNode.Leaf = true;
}
}
else
{
if (Convert.ToInt32(dt.Rows[i]["RootFlag"].ToString()) != 1)
{
treeNode.Leaf = true;
}
treeNode.Checked = false;
}
treeNode.Expanded = true;
DeptnodeHas(treeNode, Convert.ToInt32(dt.Rows[i]["id"].ToString()), id);
nd.Children.Add(treeNode);
}
}
[DirectMethod]
public string RefreshMenu()
{
NodeCollection nodes = this.BuildTree(null);
return nodes.ToJson();
}
But ,why this is value is NUll.
this.TreePanel1.CheckedNodes == null?
Last edited by jiaxiang8756; Jun 20, 2012 at 3:20 AM.
Reason: checkbox TreePanel problems