我感觉TreeNode本身的属性太少就继承下来进行扩展如下:
public class TreeNodeExt:TreeNode
{
      public string ExtAttr{get;set;}
}
关键是我想在jquery中读到这个新加的属性值,
这怎么读啊,

解决方案 »

  1.   

    顶一下,啊不能沉,高手帮帮我,
    我重写了个扩展了TreeNode属性的TreeVieww
    public class TreeNodeExt:TreeNode
     {
       //添加个新属性
           public string ExtAttr{get;set;} 
     }
    然后在页面上用,非常OK!
     <ctv:TreeNodeExt  ExtAttr="Hello"  ></ctv:TreeNodeExt>    
     当一切都感觉很美好时,问题来了,我想在jQuery中读到这个值,可是我怎么也读不到它
    帮帮吧,不然我前面做的就前功进气了
      

  2.   

    http://msdn.microsoft.com/zh-cn/library/system.web.ui.webcontrols.treenode.renderposttext(v=vs.85).aspx
    重写这个方法,把你加的属性写到生成的html里
      

  3.   


    你好,我试了下你提供的线索用的是           
      protected override void RenderPreText(HtmlTextWriter writer)
            {
                writer.AddAttribute(
                   HtmlTextWriterAttribute.Value, NodeType);
                writer.RenderBeginTag(HtmlTextWriterTag.Div);
                base.RenderPreText(writer);            
            }
    但我发现这伙并不是为TreeNode 加了属性, 而在TreeNode生成的 A标签外加一个
    <Div value=NodeType>的封装标签。 
     我在jquery里只好用 $(A).parents(div:first)来获取 这个外包的<Div>的值 虽然有些拐弯抹角,但
    还是达到了目标。目前没有别的办法,只好这样做了。谢谢你提供的线索