Re: Проблема синхронизации состояния чекбоксов в TreeView
От: MAMOHT  
Дата: 13.02.13 16:37
Оценка:
Здравствуйте, ST1, Вы писали:

ST1>Есть дерево с чекбоксами с одинарным уровнем вложенности. При отмечании корневого узла, выставляю соответствующее состояние в потомках с помощью кода:

ST1>
ST1>Private Sub OnCorrTreeCheck(ByVal sender As System.Object, ByVal e As System.Windows.Forms.TreeViewEventArgs) Handles corrTree_.AfterCheck
ST1>    For Each child As TreeNode In node.Nodes
ST1>        child.Checked = e.Node.Checked
ST1>    Next
ST1>End Sub
ST1>

ST1>Так вот если быстро щелкать родительский узел, он может отображаться выделенным, а его потомки нет. Соответственно следующий клик отмечает все дочерние,а корневой не изменяется. В интернетах люди тоже сталкивались, решение я не нашел.

Завести отдельный поток, который будет на входе принимать чекбоксы, ставить их в свою очередь и потом уже чекать их.

Либо, блокировать дерево, пока все чекбоксы не прочекались. Чтоб неповадно было чекать так быстро.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.