private void UpdateCheckmarks(TreeNodeCollection items) { TreeView treeView = Control as TreeView; if ((treeView != null) && (items != null)) { foreach (TreeNode item in items) { if (IsCheckbox(treeView, item)) { string name = treeView.UniqueID + "n" + _checkboxIndex.ToString() + "CheckBox"; bool bIsNowChecked = (Page.Request.Form[name] != null); if (item.Checked != bIsNowChecked) { item.Checked = bIsNowChecked; Extender.RaiseAdaptedEvent("TreeNodeCheckChanged", new TreeNodeEventArgs(item)); } _checkboxIndex++; } if (HasChildren(item)) { UpdateCheckmarks(item.ChildNodes); } } } }