c实现treeview动态显示树形结构aries524的专栏csdn博客

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

C#实现TreeView动态显示树形结构- aries524的专栏-

CSDN博客

C#实现TreeView动态显示树形结构收藏

/aries524/archive/2008/10/03/3013411. aspx

今日因需要,制作了一个GridView显示树形结构的例子,查阅了不少资料,实现的过程很艰辛啊。

不具体代码拿出来,大家分享一下。

数据表的创建:

CREATE TABLE [crm_treemenu] (

[i_Id] [int] NOT NULL ,

[c_mkdm] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[v_mkmc] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL ,

[v_cdlj] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [v_img] [varchar] (50) COLLATE Chinese_PRC_CI_AS NULL , [i_xh] [int] NULL ,

[i_childNum] [int] NULL ,

[IsBasic] [char] (1) COLLATE Chinese_PRC_CI_AS NULL

CONSTRAINT

[DF_crm_treemenu_IsBasic] DEFAULT (1), [IsMaintainable] [char] (1) COLLATE Chinese_PRC_CI_AS NULL CONSTRAINT

[DF_crm_treemenu_IsMaintainable] DEFAULT (0),

[C_BS] [char] (1) COLLATE Chinese_PRC_CI_AS NULL , CONSTRAINT [PK_CRM_TREEMENU] PRIMARY KEY CLUSTERED

(

[i_Id]

) ON [PRIMARY]

) ON [PRIMARY]

GO

存储过程

SET QUOTED_IDENTIFIER ON

GO

SET ANSI_NULLS ON

GO

ALTER procedure ShowPrivilege

as

select c_mkdm ,v_mkmc, '0'as fdm from crm_treemenu crm_role,crm_role_Privilege

where len(c_mkdm) =2

union

select c_mkdm ,v_mkmc ,left(c_mkdm, len(c_mkdm) -2) as fdm

from crm_treemenu where len(c_mkdm) >2

GO

SET QUOTED_IDENTIFIER OFF

GO

SET ANSI_NULLS ON

GO

前台代码:

JS部分用来实现选中复选框的操作,如没有必要,可删除!

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="role_Privilege.aspx.cs"

Inherits="BaseSetting_role_Privilege" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"

"/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="/1999/xhtml" >

<head runat="server">

<title>无标题页</title>

<script language="javascript">

function window.onload()

{

document.getElementById("trePrivitegeInfo").onclick = OnTreeNodeChecked;//这里把TreeView名改一下~ }

function OnTreeNodeChecked()

{

var ele = event.srcElement;

if(ele.type=='checkbox')

{

ele.className = "";

var childrenDivID =

ele.id.replace('CheckBox','Nodes');

var div =

document.getElementById(childrenDivID);

if(div!=null)

{

var checkBoxs =

div.getElementsByTagName('INPUT');

for(var i=0;i<checkBoxs.length;i++)

{

if(checkBoxs[i].type=='checkbox')

checkBoxs[i].checked=ele.checked;

}

}

setParentClassName(ele);

}

}

function setParentClassName(currCheckBox)

{

var objParentNode=

public_GetParentNode(currCheckBox);

if(public_IsObjectNull(objParentNode))

return;

var checkBoxs =

objParentNode.getElementsByTagName("INPUT");

var allSelect = true;

var allUnSelect = true;

for(var i=0;i<checkBoxs.length;i++)

{

相关文档
最新文档