Windows Forms / TreeView: как поставить флажки только на листьях? - PullRequest
1 голос
/ 16 ноября 2011

Выбор CheckBoxes = true в древовидной структуре ставит флажки на каждом узле.Я хочу только их на листьях?Как?

Ответы [ 2 ]

2 голосов
/ 22 октября 2013
2 голосов
/ 16 ноября 2011

Я думаю, вам нужно реализовать обработчик события owndraw для таких узлов:

treeView.DrawMode = System.Windows.Forms.TreeViewDrawMode.OwnerDrawAll;
treeView.DrawNode += new System.Windows.Forms.DrawTreeNodeEventHandler(this.treeView_DrawNode);

private void treeView_DrawNode(object sender, DrawTreeNodeEventArgs e)
{
    if(NodeWithCheckBox(e.Node))
    {
       // draw entry with checkbox
       e.DrawDefault = false;
    }
    else
    {
       e.DrawDefault = true;
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...