回覆列表
  • 1 # 嬞菇涼

    treeview控制元件要求繫結到xml資料來源上,所以必須設法把資料庫中的記憶體轉成xml檔案,然後再進行繫結。

    首先,在網頁中新增一個xmldatasource:

    和一個treeview控制元件:

    然後在page_load事件中新增以下程式碼:

    //連線資料庫

    sqlconnectionconn=newsqlconnection("連線字串");

    sqlcommandcmd=newsqlcommand("select*from資料表",conn);

    conn.open();

    sqldatareaderreader=cmd.executereader();

    //新建xml文件

    xmldocumentdoc=newxmldocument();

    xmlelementroot;

    xmlelementelement;

    //插入xml宣告

    xmldeclarationdec=doc.createxmldeclaration("1.0",null,"yes");

    doc.insertbefore(dec,doc.documentelement);

    //用來記錄根節點元素

    arraylistelements=newarraylist();

    //插入第一個節點

    reader.read();

    element=doc.createelement((string)reader["name"]);

    elements.add(element);

    doc.insertafter(element,dec);

    //插入後面的子節點

    while(reader.read())

    {

    //建立子節點

    element=doc.createelement((string)reader["name"]);

    elements.add(element);

    //找到它的父節點,然後新增到父節點下

    root=(xmlelement)elements[(int)reader["parent"]-1];

    root.appendchild(element);

    }

    //儲存xml檔案

    filestreamfs=newfilestream(@"d:\temp\names.xml",filemode.create);

    doc.save(fs);

    fs.close();

    //設定xml資料來源控制元件並把它繫結到treeview控制元件上

    xmldatasource1.datafile=@"d:\temp\names.xml";

    treeview1.datasource=xmldatasource1;

    treeview1.databind();

    這樣treeview1就綁定了一個從資料庫中讀出的樹結構,並在網頁中顯示出來。

    再說明一下,treeview是不可能繫結到一個關係資料庫表的資料來源上的,只能繫結到xml資料來源或sitemapdatasource。

  • 中秋節和大豐收的關聯?
  • 家用NAS影音方案,TV端ds video,plex,kodi,kodi+plex你選哪一個?