FineUI 官方论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

本论坛已关闭(禁止注册、发帖和回复)
请移步 三石和他的朋友们

FineUI首页 WebForms - MVC & Core - JavaScript 常见问题 - QQ群 - 十周年征文活动

FineUI(开源版) 下载源代码 - 下载空项目 - 获取ExtJS - 文档 在线示例 - 版本更新 - 捐赠作者 - 教程

升级到 ASP.NET Core 3.1,快、快、快! 全新ASP.NET Core,比WebForms还简单! 欢迎加入【三石和他的朋友们】(基础版下载)

搜索
查看: 9315|回复: 11
打印 上一主题 下一主题

tree数据库绑定的例子

[复制链接]
跳转到指定楼层
楼主
发表于 2013-10-25 01:22:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 goodlost 于 2013-10-25 01:26 编辑

看到很多人纠结这个问题,包括我在内。
下午自己试验了一把,没想到成功了。这里就告诉学习的人。
我是用得强类型的DATASET
       Table_nameTableAdapter fg = new Table_nameTableAdapter();
        DataSet1.Table_nameDataTable dataTable = fg.GetData(1);
        for (int i = 0; i < dataTable.Count; i++)
        {
            DataSet1.Table_nameRow row = dataTable;
            FineUI.TreeNode node = new TreeNode();
            node.Text = row["name"].ToString();
            node.Expanded = true;
            treeMenu.Nodes.Add(node);

推荐
 楼主| 发表于 2013-10-26 21:07:20 | 只看该作者
本帖最后由 goodlost 于 2013-10-26 21:17 编辑

后台代码,本人也是小白一个,后续的内容我会继续添加。:
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using DataSet1TableAdapters;
using TreeNode = FineUI.TreeNode;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            LoadData();
        }
    }

    private void LoadData()
    {
       Table_nameTableAdapter fg = new Table_nameTableAdapter();//声明一个Table_nameTableAdapter 类
        DataSet1.Table_nameDataTable dataTable = fg.GetData(1);//fg.GetData(1) 括号中得1是只查找表中class为1的name
        for (int i = 0; i < dataTable.Count; i++)//循环取出所有的菜单名称并且绑定到页面中的tree中。
        {
            DataSet1.Table_nameRow row = dataTable;//声明一个row数组,有表中的名称行数个数组。 for中得 dataTable.Count就是取得行数值,并且从0开始循环到所有表中的行结束。
            FineUI.TreeNode node = new TreeNode();//声明一个fineUI的树形菜单类。
            node.Text = row["name"].ToString();//将row中得name值与菜单类绑定
            node.Expanded = true;
            treeMenu.Nodes.Add(node);
        }
    }

}

最后上数据表的图
注意ID设置为主键。自增。这些是习惯撒,老鸟一笑而过把,这个是给纯粹的小白看得。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
沙发
 楼主| 发表于 2013-10-25 01:28:51 | 只看该作者
数据表我就弄了三个值 id  name  class  根据getdata返回的值去查询表,返回name的值。三石说的对,不循环或者递归,无法将内容绑定到tree的id上。为神马不能做成类似于datatable之类的控件,然后直接绑定呢。
板凳
发表于 2013-10-25 09:45:15 | 只看该作者
goodlost 发表于 2013-10-25 01:28
数据表我就弄了三个值 id  name  class  根据getdata返回的值去查询表,返回name的值。三石说的对,不循环 ...

树型结构和表格型结构是完全不同,所以不能使用相同的数据结构

多放点详细代码



地板
发表于 2013-10-25 14:43:34 | 只看该作者
同样的问题,困惑好久,求解
求数据加载成功的示例
5#
 楼主| 发表于 2013-10-26 20:53:56 | 只看该作者
好吧居然真有人要,那我就开始作业,带图。首先是本机只安装了VS2008和SQLEXPRESS 2008  版本的。
然后使用的是VS自带的强类型DATASET,用这个的好处呢就是不用你编写数据库连接字符串,还有SQL语句等等,都是系统帮你实现,你只需要把建好得表拖过来就OK。 如图所示,先建立一个XSD文件。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
6#
 楼主| 发表于 2013-10-26 20:56:08 | 只看该作者
然后就是把表拽到你的DATASET文件中如图

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
7#
 楼主| 发表于 2013-10-26 21:01:07 | 只看该作者


本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
8#
 楼主| 发表于 2013-10-26 21:02:25 | 只看该作者
页面的代码如下:<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
    <title>FineUI连接数据库学习</title>
    <link href="../css/main.css" rel="stylesheet" type="text/css" />
</head>
<body>
    <form id="form1" runat="server">
    <xageManager ID="ageManager1" AutoSizePanelID="RegionPanel1" runat="server"></xageManager>
    <x:RegionPanel ID="RegionPanel1" ShowBorder="false" runat="server">
        <Regions>
            <x:Region ID="Region2" Split="true" Width="200px" Margins="0 0 0 0" ShowHeader="false"
                Title="目录" EnableCollapse="true" Layout="Fit" Position="Left" runat="server">
                <Items>
                    <x:Accordion ID="Accordion1" runat="server" ShowBorder="false" ShowHeader="false"
                        ShowCollapseTool="true">
                        <anes>
                            <x:AccordionPane ID="AccordionPane1" runat="server" Title="面板一" IconUrl="~/images/16/1.png"
                                BodyPadding="2px 5px" Layout="Fit" ShowBorder="false">
                                <Items>
                                    <x:Tree runat="server" EnableArrows="true" ShowBorder="false" ShowHeader="false"
                                        AutoScroll="true" ID="treeMenu">
                                    </x:Tree>
                                </Items>
                            </x:AccordionPane>
                            <x:AccordionPane ID="AccordionPane2" runat="server" Title="面板二" IconUrl="~/images/16/4.png"
                                BodyPadding="2px 5px" ShowBorder="false">
                                <Items>
                                    <x:Tree runat="server" EnableArrows="True" ShowBorder="True" ShowHeader="False" AutoScroll="True"
                                        ID="treeMenu2">
                                    </x:Tree>
                                </Items>
                            </x:AccordionPane>
                        </Panes>
                    </x:Accordion>
                </Items>
            </x:Region>
            <x:Region ID="Region3" ShowHeader="false" EnableIFrame="true" IFrameUrl="~/accordion/accordion_tree_index.htm"
                IFrameName="main" Margins="0 0 0 0" Position="Center" runat="server">
            </x:Region>
        </Regions>
    </x:RegionPanel>
    <asp:XmlDataSource ID="XmlDataSource1" runat="server" DataFile="~/common/menu.xml">
    </asp:XmlDataSource>
    </form>
</body>
</html>


10#
 楼主| 发表于 2013-10-26 21:18:54 | 只看该作者
最后补一张效果图吧

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|FineUI 官方论坛 ( 皖ICP备2021006167号-1 )

GMT+8, 2024-11-23 15:12 , Processed in 0.048882 second(s), 20 queries , Gzip On.

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表