还是关于dev的treelist问题。

ruhong 2013-07-12 10:36:08
我记得在哪里看过这样一个例子,
点击一个combo,就弹出一个treelist供用户选择,忘了是哪个例子了。
各位大佬有实现这个功能的,告诉我一下怎么做,
代码越简单越好。
...全文
122 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
men52676521 2014-03-06
  • 打赏
  • 举报
回复
ruhong 2013-07-15
  • 打赏
  • 举报
回复
谢谢,我学习学习。
f_jason 2013-07-15
  • 打赏
  • 举报
回复

你是指上面这种吗?
如果是上面这种效果,是用PopupContainerControl来作为下拉框的控件,如下绑定树控件到PopupContainerControl
fTreeContainer = new PopupContainerControl();
this.Properties.PopupControl = fTreeContainer;

//添加树
fTree = new TreeList();
fTreeContainer.Controls.Add(fTree);
fTree.Dock = DockStyle.Fill;

//设置树的属性
TreeHelper.SetTreeListCommonProperty(fTree); //设置树的公共属性
fTree.OptionsBehavior.Editable = false; //不允许编辑
fTree.OptionsMenu.EnableColumnMenu = false; //禁用列菜单

//设置主键列与父列
fTree.KeyFieldName = fDataField.TreeKeyFieldName;
fTree.ParentFieldName = fDataField.TreeParentFieldName;



通过QueryPopUp事件给处理树控件的DataSource数据源,
通过树的AfterExpand,MouseMove处理你要做的事情,
可能有些树的属性你要设置,比如

tree.Font = ResourceService.DefaultFont;
tree.OptionsView.EnableAppearanceEvenRow = true;
tree.OptionsView.EnableAppearanceOddRow = true;
tree.OptionsBehavior.UseTabKey = true;

tree.Appearance.OddRow.BackColor = Color.White;
tree.Appearance.OddRow.Options.UseBackColor = true;
tree.Appearance.EvenRow.BackColor = Color.Linen;
tree.Appearance.EvenRow.Options.UseBackColor = true;

tree.OptionsView.AutoWidth = false;

tree.AfterExpand += new NodeEventHandler(tree_AfterExpand);
tree.CustomDrawNodeCell += new CustomDrawNodeCellEventHandler(TreeList_CustomDrawNodeCell);


tree.CustomDrawColumnHeader += new CustomDrawColumnHeaderEventHandler(tree_CustomDrawColumnHeader);

TreeListRowNumberHelper.Do(tree);

//设置控件的字体
tree.Appearance.Row.Font = MenuToolService.SystemFont;
tree.Appearance.SelectedRow.Font = MenuToolService.SystemFont;
tree.Appearance.OddRow.Font = MenuToolService.SystemFont;
tree.Appearance.FocusedCell.Font = MenuToolService.SystemFont;
tree.Appearance.FocusedRow.Font = MenuToolService.SystemFont;
tree.Appearance.GroupButton.Font = MenuToolService.SystemFont;
tree.Appearance.GroupFooter.Font = MenuToolService.SystemFont;
tree.Appearance.HeaderPanel.Font = MenuToolService.SystemFont;
tree.Appearance.Preview.Font = MenuToolService.SystemFont;
tree.Appearance.TreeLine.Font = MenuToolService.SystemFont;
ruhong 2013-07-14
  • 打赏
  • 举报
回复
有人教我吗,顶一下。

110,561

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧