欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

C#TreeView 無限級別分類實現方法

 更新時間:2013年04月01日 09:10:53   作者:  
C#TreeView 無限級別分類實現方法

做分類 經常會用到無限級別的分類  先介紹一下數據庫的表結構

tid  類別編號

tname 類別名稱

pid 父類編號

測試數據就不寫了,大家可以自己插入一下試試

查詢制定類別的 所有的子類   sql 的 代碼

復制代碼 代碼如下:

alter proc  proc_chaxun
(@tid int )
as
begin 

   
    with tt  as
    (

        select tid,tname,pid from dbo.t_goodsType where tid=@tid
        union all
        select t.tid,t.tname,t.pid from dbo.t_goodsType  t inner join tt
        on t.pid=tt.tid
    )
    select * from tt
end

查詢之后獲取記錄集   綁定到前臺的 TreeView 上面

復制代碼 代碼如下:

 /// <summary>
            /// 給Tree 綁定數據 遞歸添加子節(jié)點
            /// </summary>
            /// <param name="dv">數據視圖</param>
            /// <param name="tnOld">添加數據的節(jié)點</param>
            public void TreeDataBind(DataView dv,TreeNode tnOld)
            {
                TreeNode tnNew;    //創(chuàng)建一個新的節(jié)點
                foreach (DataRowView drv in dv)
                {
                    //為新的借點設置屬性
                    tnNew = tnOld.Nodes.Add(drv["tname"].ToString());
                    tnNew.Tag = drv["tid"];
                    //過濾數據視圖 父類id = 上一級的tid
                    dv.RowFilter = "pid=" + drv["tid"].ToString();
                    //自己調用自己
                    TreeDataBind(dv, tnNew);
                }
            }

調用的方法很簡單

復制代碼 代碼如下:

DataTable dtRet = (DataTable)dh.ExecProcRetObj(ep);
DataView dv = new DataView(dtRet);
 dv.RowFilter = "pid=0";
TreeDataBind(dv, this.treeView1.Nodes.Add("商品類別"));

效果

相關文章

  • C#中LINQ的Select與SelectMany函數使用

    C#中LINQ的Select與SelectMany函數使用

    這篇文章主要介紹了C#中LINQ的Select與SelectMany函數使用,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • 關于Unity C# Mathf.Abs()取絕對值性能測試詳解

    關于Unity C# Mathf.Abs()取絕對值性能測試詳解

    這篇文章主要給大家介紹了關于Unity C# Mathf.Abs()取絕對值性能測試的相關資料,文中通過示例代碼介紹的非常詳細,對大家學習或者使用Unity C#具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-04-04
  • C#操作RabbitMQ的完整實例

    C#操作RabbitMQ的完整實例

    這篇文章主要為大家詳細介紹了C#操作RabbitMQ的完整實例,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-08-08
  • C#畫筆使用復合數組繪制單個矩形的方法

    C#畫筆使用復合數組繪制單個矩形的方法

    這篇文章主要介紹了C#畫筆使用復合數組繪制單個矩形的方法,涉及C#使用畫筆繪制圖形的相關技巧,需要的朋友可以參考下
    2015-06-06
  • 詳解C#中String.ToCharArray方法的使用

    詳解C#中String.ToCharArray方法的使用

    這篇文章主要為大家詳細介紹了C#中String.ToCharArray方法的使用的相關知識,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-01-01
  • WPF實現自定義Panel面板的示例詳解

    WPF實現自定義Panel面板的示例詳解

    WPF中的Panel(面板),是繼承自FrameworkElement的抽象類,表示一個可以用來排列子元素的面板,本文主要來和大家聊聊WPF如何實現自定義Panel,感興趣的可以了解下
    2023-09-09
  • C#學習教程之Socket的簡單使用

    C#學習教程之Socket的簡單使用

    這篇文章主要給大家介紹了關于C#學習教程之Socket的簡單使用,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧
    2019-02-02
  • 基于WPF手寫一個簡單的消息對話框

    基于WPF手寫一個簡單的消息對話框

    消息對話框是UI界面中不可或缺的組成部分,用于給用戶一些提示,警告或者詢問的窗口,本文將使用WPF手寫一個簡單的消息對話框,感興趣的小伙伴可以了解下
    2023-12-12
  • Unity?UGUI的Text文本組件使用示例

    Unity?UGUI的Text文本組件使用示例

    這篇文章主要為大家介紹了Unity?UGUI的Text文本組件使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-07-07
  • C#處理datagridview虛擬模式的方法

    C#處理datagridview虛擬模式的方法

    這篇文章主要介紹了C#處理datagridview虛擬模式的方法,實例分析了C#中datagridview的使用技巧,需要的朋友可以參考下
    2015-06-06

最新評論