社区
C#
帖子详情
树型结构中怎么响应事件
mbh0210
2005-07-22 09:48:20
树型结构是通过读取数据库中的数据来实现的,怎么在我点击节点的时候执行一些事件.
...全文
157
10
打赏
收藏
树型结构中怎么响应事件
树型结构是通过读取数据库中的数据来实现的,怎么在我点击节点的时候执行一些事件.
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
10 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
一杯清茶几行代码
2005-07-22
打赏
举报
回复
up
fanruinet
2005-07-22
打赏
举报
回复
得把treeview的AutoPostBack设置为true才行
mbh0210
2005-07-22
打赏
举报
回复
我用SelectedIndexChange事件,当点击的时候弹出一个对话框,但运行之后点击节点,没有对话框....
lyb_abiandbel
2005-07-22
打赏
举报
回复
mark
silverseven7
2005-07-22
打赏
举报
回复
#region Tree Selected
/// <summary>
/// Tree Selection Change
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void tvDocDir_SelectedIndexChange(object sender, Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs e)
{
this.SetPageView(MainPageStatus.ViewStatusInit);
try
{
TreeNode node = TreeOperationDB.GetNodeId(this.tvDocDir);
int right = this.GetCurrentNodeRight(node.ID);
if( right < 1 )
{
// Users dont have read permission
return;
}
else if( right < 2 )
{
// Only Read
this.dgDocDetail.Columns[5].Visible = false;
this.btnAddDoc.Visible = false;
}
else if( right < 3 )
{
// Update
this.dgDocDetail.Columns[5].Visible = false;
this.btnAddDoc.Visible = true;
}
else
{
this.dgDocDetail.Columns[5].Visible = true;
this.btnAddDoc.Visible = true;
}
this.Session["DocumentList"] = null;
DataTable dtDocDetail = this.GetDocumentList();
if( dtDocDetail.Rows.Count == 0 )
{
this.DivDocDetail.Visible = false;
}
else
{
this.DivDocDetail.Visible = true;
dgDocDetail.DataSource = dtDocDetail;
dgDocDetail.DataBind();
}
this.SetPageView(MainPageStatus.ViewStatusFileList);
}
catch( ApplicationException ex )
{
if( ex.Message == "1060")
{
this.NodeLostManagement( ex.Message );
}
else if( ex.Message == "1062" )
{
// TreeNode Has been Modifiey
this.ShowMessage(this.GetMessage(ex.Message));
// Rebuild Tree
string treePath = this.tvDocDir.SelectedNodeIndex;
this.rebuildTree(treePath);
this.tvDocDir_SelectedIndexChange( new object() , new Microsoft.Web.UI.WebControls.TreeViewSelectEventArgs("0","0") );
}
}
fanruinet
2005-07-22
打赏
举报
回复
怎么不发到ASP.NET区?发在这里也该说明白
用SelectedIndexChange事件
mbh0210
2005-07-22
打赏
举报
回复
没有这些事件,是在asp.net下的
fanruinet
2005-07-22
打赏
举报
回复
用BeforeSelect或者AfterSelect事件就可以
mbh0210
2005-07-22
打赏
举报
回复
嗯,先谢谢了,只是刷新很烦恼的......
ycy589
2005-07-22
打赏
举报
回复
学习
一个js代码实现树
结构
tree.js
树
结构
在很多地方都会用到的,这是js实现树代码,很实用,测试过了可以用的,没有网上的复杂,很好用, 其
中
,imgSrc要换成你硬盘里存在的图片路径。然后在你的+号图片的单击
事件
响应
使用topOfList()函数即可,我测试过,可用。ShinkSlowly()函数内部可以控制张开和收缩的速度。
构建定制的
树型
视图
JMagnitudeTree 的设计目标包括: 正确显示相对于根节点的节点数量。 创建灵活的类属类,这些类将提供对于任何合适的数据源的数量绘制基础。 始终维护用户
响应
性和可预测性,即使在计算大型
树型
结构
的总数时。
基于
树型
结构
模型足球成绩系统的研究与设计
随着移动互联网技术的迅速发展,互联网上的移动设备呈爆炸性的增长。为了解决网站和未来新设备的兼容性和可访问性,为PC端和移动端的用户提供更加舒适的访问界面和速度,将其设计成为
响应
式。分别对
响应
式元素及媒体、
响应
式伸缩布局、
响应
式字体和图片、
响应
式框架进行了探讨与研究,最终将
响应
式的有关技术应用到了B2C模式的电子商务网站的设计
中
。
论文研究-动态网络管理信息模型的设计与实现.pdf
在参考国际标准化组织给出的管理信息模型的基础上,结合具体通信系统的特点提出了基于SNMP框架的动态信息模型的设计原则,即信息模型采用
树型
结构
以反映动态变化网络
中
被管设备的信息、网络单元之间的连接关系以及分级管理的组织
结构
,从而形成一个完整的网络
结构
逻辑视图。该模型具有
结构
紧密合理,相关的数据操作准确、
响应
快速,数据加载、设备增删能很容易地实现等特点,有效地解决了动态网络管理系统
中
,节点管理
中
心对链路的动态管理及链路所辖设备的动态管理问题。最后用VC 和Oracle加以实现。
VC类似QQ游戏大厅导航的
树型
控件
第一步:新建一个基于对话框的MFC工程,拖动一棵标准
树型
控件放于界面之上。添加一个新类CTreeCtrlBT派生自CTreeCtrl。 第二步:为该类添加一些消息
响应
以及虚函数。其详细作用如下: void PreSubclassWindow(); //用于添加初始化控件的相关信息 WM_SIZE //控件区域发生变化时候的处理 WM_PAINT //绘制控件 WM_MOUSEMOVE //主要获取鼠标所在位置的单元项 第三步:TreeCtrlBT.h
中
首先声明一个
结构
用于保存单元项的相关信息,并把所有项的信息放入一个map。实现代码如下: typedef struct tagItemMsg { HTREEITEM hItem; //项的句柄 CBitmap ItemBitmap; //项的位图 COLORREF crTransparent; //透明颜色 tagItemMsg() { hItem = NULL; crTransparent = RGB(255,255,255); } ~tagItemMsg() { if ( ItemBitmap.GetSafeHandle() ) { ItemBitmap.DeleteObject(); } } }ITEM_MSG; typedef map ITEMMSG_MAP; 第四步:计算控件的客户区域大小,以及滚动条滚动的偏移量。详细过程参考源代码 Calculate函数。 第五步:添加接口函数以及成员变量。如下: (注意:TransparentBlt函数,需要包含msimg32.dll) //设置背景位图BOOL SetBackgroudBitmap( UINT nID );BOOL SetBackgroudBitmap(LPCTSTR lpszRecourceName);//设置某一项位图void SetItemBitmap(HTREEITEM hItem, UINT nIdBitmap);void SetItemBitmap(HTREEITEM hItem, LPCTSTR lpszBitmap);//设置展开收缩的图表void SetExpandBitmap(UINT nIdExpand, UINT nIdCollapse, COLORREF crTransparent = RGB(255,255,255));//插入新的项目HTREEITEM InsertItemEx(HTREEITEM hParent, LPCTSTR lpszItem, UINT nIdBitmap = 0, OLORREF crTransparent = RGB(255,255,255));HTREEITEM InsertItemEx(HTREEITEM hParent, LPCTSTR lpszItem, LPCTSTR lpszBitmap, COLORREF crTransparent = RGB(255,255,255));//开启横线void EnableRowLine( BOOL bEnable = TRUE );//是否开启横线BOOL IsEnableRowLine();//开启根节点背景void EnableRootBk( BOOL bEnable = TRUE );//是否开启根节点背景BOOL IsEnableRootBk();//获取某一项信息ITEM_MSG* GetItemMsg(HTREEITEM hItem); 第六步:绘制控件。需要的绘制函数如下: //绘制渐变色矩形区域void GradientFillRect( CDC *pDC, CRect &rect, COLORREF col_from, COLORREF col_to, bool vert_grad ); //绘制控件背景void DrawBackgroudBitmap(CDC* pDc); //绘制单元项void DrawItem( CDC* pDC ); //绘制单元项下部横线void DrawRowLine(CPoint ptBegin, CPoint ptEnd, CDC *pDc = NULL); //绘制展开收缩按钮void DrawExpand(CRect rect, int state,
C#
110,535
社区成员
642,577
社区内容
发帖
与我相关
我的任务
C#
.NET技术 C#
复制链接
扫一扫
分享
社区描述
.NET技术 C#
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
让您成为最强悍的C#开发者
试试用AI创作助手写篇文章吧
+ 用AI写文章