如何通过DXperience TreeList展示数据表的上下级结构

 我来答
huanglenzhi
推荐于2016-11-07 · 知道合伙人数码行家
huanglenzhi
知道合伙人数码行家
采纳数:117538 获赞数:517201
长期从事计算机组装,维护,网络组建及管理。对计算机硬件、操作系统安装、典型网络设备具有详细认知。

向TA提问 私信TA
展开全部
  概述:此例子为一工程的一个页面,通过

  此例子为一工程的一个页面,通过DXperience TreeList

  点击左边树状结构来异步实现子表相关数据展示:

  

  点击gridview的数据操作列进行数据操作(使用覆盖效果,覆盖其他内容):

  

  点击排序列的序号进行排序:

  

  如果上述数据操作效果以及展示方式符合你的项目需求,那么可以尝试着看下整个页面的实现方式

  引入dev的相关命名注册空间:

  aspx页:

  <%@ Register Assembly="DevExpress.Web.ASPxTreeList.v9.1, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxTreeList" TagPrefix="dxwtl" %>

  

  <%@ Register Assembly="DevExpress.Web.ASPxGridView.v9.1.Export, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxGridView.Export" TagPrefix="dxwgv" %>

  

  <%@ Register Assembly="DevExpress.Web.v9.1, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxPanel" TagPrefix="dxp" %>

  

  <%@ Register Assembly="DevExpress.Web.v9.1, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxCallbackPanel" TagPrefix="dxcp" %>

  

  <%@ Register Assembly="DevExpress.Web.v9.1, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxClasses" TagPrefix="dxw" %>

  

  <%@ Register Assembly="DevExpress.Web.v9.1, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxTabControl" TagPrefix="dxtc" %>

  

  <%@ Register Assembly="DevExpress.Web.ASPxGridView.v9.1, Version=9.1.2.0, Culture=neutral, PublicKeyToken=b88d1754d700e49a"

  Namespace="DevExpress.Web.ASPxGridView" TagPrefix="dxwgv" %>

  cs页面:

  using DevExpress.Web.ASPxEditors; using DevExpress.Web.ASPxTabControl; using DevExpress.Web.ASPxTreeList;

  第一步:左边组织树的实现:

  上一级。例如中国

  昌平

  对应的fieldname)。另外一种方法为一级一级的自主生成数。该实例即使用该方法。

  aspx:

  dxwtl:ASPxTreeList ID="devtrlstRole" Height="200px" runat="server" Cursor="default" ClientInstanceName="treelist" AutoGenerateColumns="False" Width="250px" KeyFieldName="ZXTBS" ParentFieldName="MKFLBS">

  <Columns>

  <dxwtl:TreeListTextColumn Caption="模块分类名称" FieldName="name" VisibleIndex="0">

  </dxwtl:TreeListTextColumn>

  <dxwtl:TreeListTextColumn FieldName="MKFLBS" VisibleIndex="1" Visible="False">

  </dxwtl:TreeListTextColumn>

  <dxwtl:TreeListTextColumn FieldName="MXMKBS" VisibleIndex="1" Visible="False">

  </dxwtl:TreeListTextColumn>

  </Columns>

  

  <SettingsBehavior ExpandCollapseAction="NodeDblClick" AllowFocusedNode="True" AllowSort="False" />

  <ClientSideEvents FocusedNodeChanged="function(s, e) {

  onFocusChanged();

  }" Init="function(s, e) {

  devcbxgvwDetails.SetVisible(false);

  }" />

  

  </dxwtl:ASPxTreeList>

  cs:

  private void TreelistBind() { devtrlstRole.ClearNodes(); DataTable DTChildSys, DTModul; SelectSQL = "select * from DVAA024"; QueryData = DataHandle.ExecuteSQL(SelectSQL); Session["CWW_DT_XTMKJZ"] = QueryData.Tables[0]; DataView DVChildSys = QueryData.Tables[0].DefaultView; string[] ChildSys = { "ZXTBS", "ZXTMC" }; DTChildSys = DVChildSys.ToTable(true, ChildSys); string[] Module = { "ZXTBS", "MKFLBS", "ZXTMC", "MKFLMC" }; DTModul = DVChildSys.ToTable(true, Module); int Count = 0; HashDataCopiedValue = new Hashtable(); for (int i = 0; i < DTChildSys.Rows.Count; i++) { TreeListNode TrlstChildSys = CreateNodeCore(i + 1, DTChildSys.Rows[i]["ZXTMC"].ToString().Trim(), null); TrlstChildSys.Expanded = true; QueryRow = DTModul.Select("ZXTBS='" + DTChildSys.Rows[i]["ZXTBS"].ToString().Trim() + "'"); for (int j = 0; j < QueryRow.Length; j++) { TreeListNode TrlstModule = CreateNodeCore(DTChildSys.Rows.Count + Count + 1, QueryRow[j]["MKFLMC"].ToString().Trim(), TrlstChildSys); HashDataCopiedValue[DTChildSys.Rows.Count + Count + 1] = QueryRow[j]["MKFLBS"].ToString().Trim(); Count++; } } Session["CWW_Hash"] = HashDataCopiedValue; } TreeListNode CreateNodeCore(object key, string name, TreeListNode parentNode) { TreeListNode node = devtrlstRole.AppendNode(key, parentNode); node["name"] = name; return node; }

  这样我们就实现了aspxtreelist的数据装载,其中需要注意我们在前台页设置了以下属性以及参数来进行下一步的效果实现

  1.AllowFocusedNode="True",设置树为可聚焦,主要实现通过聚焦来展示子表数据。
本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式