Наши проекты:
Журнал · Discuz!ML · Wiki · DRKB · Помощь проекту |
||
ПРАВИЛА | FAQ | Помощь | Поиск | Участники | Календарь | Избранное | RSS |
[3.144.189.177] |
|
Сообщ.
#1
,
|
|
|
Проблема с запуском контекстного меню у treeView появилась после того, как treeView на форме стал использоваться, как источник данных в процедуре перетаскивания мышью Drag-Drop, реализованными стандартными средствами MicroSoft.
В обработчик нажатия был добавлен следующий код: private void treeView_MouseDown(object sender, MouseEventArgs e) { if (e.Button == System.Windows.Forms.MouseButtons.Left) { TreeNode node = treeView.GetNodeAt(e.X, e.Y); if (node != null) { // ... некоторые предварительные вычисления, не влияющие на элементы формы, а меняющие Tag у node //Проблемы появились после добавления этой стандартной функции от MicroSoft treeView.DoDragDrop(node, DragDropEffects.Copy); //Это старый код, который должен остаться и при котором все работало treeView.SelectedNode = node; } } } Сам Drag-Drop отрабатывается без проблем. Если важно, то на treeView_AfterSelect реализован обработчик, заполняющий элементы формы информацией private void treeView_AfterSelect(object sender, TreeViewEventArgs e) { TreeNode currentNode = treeView.SelectedNode; if (currentNode != null) { FillAll(currentNode); } } Подскажите, пожалуйста как решить эту проблему |
Сообщ.
#2
,
|
|
|
К сожалению, похоже что по части программирования форум мертвый. Нашел решение здесь http://ru.stackoverflow.com/questions/6009...ления-drag-drop
|