
例如:
TreeListNode ParentNode=treeList.AppendNode(null,null)//添加第一节点
ParentNode.SetValue(treeList.Columns[0], "显示的值")//添加第一节点显示的值
treelist设置展开卡顿:Devexpress中的TreeList是经常用到的数据浏览管理控件,它的数据加载方式通常是赋予DataSource数据源,并指定ParentFieldName和KeyFieldName来确定"父子"关系,这种绑定方式 *** 作简单,但加载和 *** 作十分卡顿(100个节点),用户体验非常差。推荐使用AppendNode逐条加载,此方法有多个重载方法,支持设置节点数据对象(object数据组或DataRow)、父节点ID、父节点、图像索引、选择状态、tag值等。
首先启用TreeList的ShowingEditor事件,该事件在控件转化到可编辑状态前调用,只要设置该事件的参数CancelEventArgs即可而对于具体是哪一个节点则可以通过TreeList的FocusedNode来获取,而对于是哪一列则可以通过TreeList的FocusedColumn来获取
而我现在的这个项目还要求结合第一列的值来进行判断,那么就通过FocusedNode的GetValue(0)方法来获取第一列的值。
写了这么多还是来看一下代码可能更明白:
private void treeList1_ShowingEditor(object sender, CancelEventArgs e)
{
TreeList currentTreeList = sender as TreeList
if (currentTreeList != null)
{
TreeListNode node = currentTreeList.FocusedNode
DevExpress.XtraTreeList.Columns.TreeListColumn column = currentTreeList.FocusedColumn
if (column.FieldName == "ITEM_VALUE" &&node.GetValue(0).ToString() != "")
{
e.Cancel = true
}
else
{
e.Cancel = false
}
}
}
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)