XraTreeList的常用方法
来源:互联网 发布:javascript模块化开发 编辑:程序博客网 时间:2024/06/05 18:23
XraTreeList的常用方法
1,数据源的绑定
DataSet ds =new DataSet();
da.Fill(ds, "sendinfo");
con.Close();
//treeList1.OptionsBehavior.PopulateServiceColumns= true;
this.treeList1.DataSource= ds.Tables["sendinfo"];
//this.treeList1.PopulateColumns();
this.treeList1.KeyFieldName= "cid";
this.treeList1.ParentFieldName = "parent_cid";
2 父子节点连动
private void treeList1_AfterCheckNode(object sender, NodeEventArgs e){
SetCheckedChildNodes(e.Node,e.Node.CheckState);
SetCheckedParentNodes(e.Node,e.Node.CheckState);
}
privatevoid treeList1_BeforeCheckNode(object sender, CheckNodeEventArgse) {
e.State = (e.PrevState == CheckState.Checked ? CheckState.Unchecked: CheckState.Checked);
}
privatevoid SetCheckedChildNodes(TreeListNode node, CheckStatecheck) {
for(int i = 0; i < node.Nodes.Count; i++) {
node.Nodes[i].CheckState =check;
SetCheckedChildNodes(node.Nodes[i], check);
}
}
privatevoid SetCheckedParentNodes(TreeListNode node, CheckStatecheck) {
if(node.ParentNode!= null) {
boolb = false;
CheckStatestate;
for(int i = 0; i < node.ParentNode.Nodes.Count; i++) {
state = (CheckState)node.ParentNode.Nodes[i].CheckState;
if(!check.Equals(state)){
b = !b;
break;
}
}
node.ParentNode.CheckState = b? CheckState.Indeterminate : check;
SetCheckedParentNodes(node.ParentNode, check);
}
}
3 获取当前选中的所有子节点
private void button1_Click(objectsender, EventArgs e)
{
//ArrayListalist = new ArrayList();
//intincount = treeList1.Nodes.Count - 1;
//for(int i = incount; incount >= 0; i--)
//{
// if (treeList1.Nodes[i].CheckState ==CheckState.Checked)
// alist.Add(treeList1.Nodes[i].GetDisplayText("name"));
// alist.Add(treeList1.Nodes[i].GetValue("name"));
// //qtyList.Add(CurTmpNode.GetValue("DataObject"))
//}
// //ArrayList selectedNodes = newArrayList();
// //selectChildren(treeList1.Nodes[0].Nodes[0], selectedNodes);
// //treeList1.Selection.Set(selectedNodes);
// //selectedNodes.Add("1");
//if(alist[0] != null)
// textBox1.Text = alist[0].ToString();
if(treeList1.Nodes.Count > 0)
{
foreach(TreeListNode root intreeList1.Nodes)
{
// GetCheckedOfficeID(root);
textBox1.Text +=GetCheckedOfficeID(root);
}
}
}
privatestring GetCheckedOfficeID(TreeListNode root)
{
stringvalue="";
foreach(TreeListNode node inroot.Nodes)
{
if(node.Nodes.Count==0)
{
if(node.CheckState == CheckState.Checked)
{
DataRowView drv = treeList1.GetDataRecordByNode(node) as DataRowView;
if (drv != null)
{
value += drv["name"].ToString()+" ";
}
}
}
GetCheckedOfficeID(node);
}
returnvalue;
}
- XraTreeList的常用方法
- 常用类的常用方法
- 一些常用的方法
- 一些常用的方法
- javascript 常用的方法
- SimpleDateFormat的常用方法
- 常用的数据库连接方法
- 常用的数据库连接方法
- 常用的C#方法
- 部分常用的方法
- javascript 常用的方法.....
- CString的常用方法
- JS 的常用方法
- JS 常用的方法
- HttpServletResponse的常用方法
- CString的常用方法
- CString的常用方法
- 几个常用的方法
- 迭代取中法、乘同余法及混合同余法产生随机数方法
- Android中数据库升级说明
- MVC常用控件
- 正则表达式30分钟入门教程
- get_param matlab调用model 参数
- XraTreeList的常用方法
- boost字符串处理(上)
- netbeans配置dspace
- Windows下使用skipfish
- boost字符串处理(下)
- 学习effective java-23泛型之在新代码中不要使用原生类型
- 文本框的值三级联动
- DEV xtrareports
- Android平台下实现一个进程管理器