【发布时间】:2013-10-31 11:44:17
【问题描述】:
我有一个带有多个父节点的radTreeListView,它可以包含多个子节点,也可以包含多个子子节点。
我想确保只选择了 8 个项目,并且不超过这个。这 8 个选择也必须在同一个父节点下。
【问题讨论】:
标签: telerik radtreeview
我有一个带有多个父节点的radTreeListView,它可以包含多个子节点,也可以包含多个子子节点。
我想确保只选择了 8 个项目,并且不超过这个。这 8 个选择也必须在同一个父节点下。
【问题讨论】:
标签: telerik radtreeview
你可以试试这样的:
private RadTreeNode GetParentNode(RadTreeNode currentNode) {
if (currentNode.Parent!=null) {
return GetParentNode(currentNode.Parent);
}
return currentNode;
}
private void CountSelectedNodes(RadTreeNode firstNode, ref int selectedCount) {
if (firstNode.Nodes!=null) {
foreach(RadTreeNode node in firstNode.Nodes) {
CountSelectedNodes(node, ref selectedCount);
}
if (firstNode.IsSelected) {
selectedCount+=1;
}
}
}
private bool SelectionAllowed(RadTreeNode currentNode) {
RadTreeNode treeNode=GetParentNode(currentNode);
int selectedCount;
CountSelectedNodes(treeNode, ref selectedCount);
return selectedCount<=8;
}
(此代码未经测试,因此可能存在一些错误)
使用当前单击的节点调用 selectionAllowed()
【讨论】: