好多年没写文章了
这里就分享点自己原创的一点破代码,效果如图下:

本人的提供的代码如下:

using System;
using System.Collections.Generic;
using System.Text;
using System.Web.UI.WebControls;

namespace Interface.Common
{
    
public interface IDropDownTree : IDisposable
    
{
        
/// <summary>
        
/// 返回Dictionary里分别对应ID,文本,如果没有子节点返回null
        
/// </summary>
        
/// <param name="parentID">父节点ID</param>
        
/// <returns></returns>

        Dictionary<stringstring> GetChildCategory(string parentID);
        
/// <summary>
        
/// 代码里写return new Interface.Common.DropDownTree(this);
        
/// </summary>

        DropDownTree DropDownTree
        
{
            
get;
        }

    }

    
public sealed class DropDownTree
    
{
        IDropDownTree _DropDownTree;
        
public DropDownTree(IDropDownTree dropDownTree)
        
{
            _DropDownTree 
= dropDownTree;
        }

        
/// <summary>
        
/// 用于树的前缀
        
/// </summary>
        
/// <param name="IsLast">是否是同级节点中的最后一个</param>
        
/// <param name="HasChild">本节点是否拥有子节点</param>
        
/// <param name="ParentString">父节点前缀符号</param>
        
/// <returns>本节点的前缀</returns>

        private string GetPreFix(bool isLast, bool hasChild, string parentString)
        
{
            
string result = string.Empty;
            
if (!string.IsNullOrEmpty(parentString))
            
{
                parentString 
= parentString.Remove(parentString.Length - 1).Replace("""").Replace(""" ");
                result 
+= parentString;
            }

            
if (isLast)
            
{
                result 
+= "";
            }

            
else
            
{
                result 
+= "";
            }

            
if (hasChild)
            
{
                result 
+= "";
            }

            
else
            
{
                result 
+= "";
            }

            
return result;
        }

        
绑定下拉菜单
    }

}


调用方法很简单:
1.继承自IDropDownTree接口
2.实现3个接口方法

实现接口代码示例[Dispose方法自己实现],最主要的是自己实现获得子级的方法
 IDropDownTree 成员

页面调用代码: 类名.DropDownTree.BindToDropDownList(下拉控件ID);

希望对大伙有点帮助....
posted on 2008-04-17 10:20 路过秋天 阅读(2485) 评论(20)  编辑 收藏 所属分类: asp.net 2.0

  回复  引用  查看    
2008-04-17 11:28 | Justin      
很好!一点不破
  回复  引用  查看    
2008-04-17 11:42 | 侯垒      
正需要这个.
  回复  引用  查看    
2008-04-17 12:21 | 高海东      
不错的功能 下拉列表
  回复  引用  查看    
2008-04-17 13:06 | 留恋星空      

  回复  引用  查看    
2008-04-17 13:09 | 生鱼片      
这个模板好费眼睛
  回复  引用  查看    
2008-04-17 13:17 | 李战      
路过,东东不错,就是不习惯黑背景。
  回复  引用  查看    
2008-04-17 13:43 | lexus      
以前也做过一个类似的,下次放上来
  回复  引用  查看    
2008-04-17 14:08 | 隐姓埋名      
收藏之~
谢谢~

  回复  引用  查看    
2008-04-17 15:11 | 谁在说谎      



8错
8错
  回复  引用  查看    
2008-04-17 22:54 | 高_超      
比较不错.学习下
  回复  引用    
2008-04-25 16:43 | jxdyzwh [未注册用户]
谁能给我一个完整的例子呀,急用,非常感谢!jxdyzwh@163.com
  回复  引用    
2008-04-26 18:02 | zmm [未注册用户]
有完整的例子吗,我调试总出错,非常感谢! success.zmm@163.com
  回复  引用    
2008-05-02 10:26 | 文本框 [未注册用户]
兄弟这个是.net 的.这么麻烦.能不能处理一个PHP的啊.我有一个PHP的,就是有点问题想请教你.我的QQ:512179348
  回复  引用<