在项目中经常遇到树状结构的对象比如产品分类、部门结构、地区……对于这类对象的呈现,一般都使用树控件(比如VS2005自带的TreeView控件)。但是树控件的使用和操作都比较复杂,对于一些比较简单的操作,比如单选其中的一个节点的情况则可用使用下拉列表框来代替。要在DropDownList中展示出树结构的层次,那就必须在每个节点的Text前加入一定的占位符,以实现层次的效果,比如:
由于这种下拉列表控件在项目中经常使用,于是决定写一个通用的服务器控件出来。该控件继承自DropDownList,在使用中只需要为该控件设置用于数据绑定的DataTextField和DataValueField,以及新增的属性ChildProperty(string,对象的Child属性的名字)和DeepChar(string,在表示层次中使用的占位符,默认是“–”),设置了这4个属性后,在后台就只需要将树结构对象的Root节点作为DataSource,然后执行DataBind()即可。
<div style=”border-right: #cccccc 1px solid; padding-right: 5px; border-top: #cccccc 1px solid; padding-left: 4px; font-size: 13px; padding-bottom: 4px; border-left: #cccccc 1px solid; width: 98%; word-break: break-all; padding-top: 4px; border-bottom: #cccccc 1px solid; background-color: #eeeeee”>
<img id=”Code_Closed_Image_104722″ onclick=”code_collapse_toggle(this);” height=”16″ alt=”” src=”/Images/OutliningIndicators/ContractedBlock.gif” width=”11″ align=”top”><img id=”Code_Open_Image_104722″ style=”display: none” onclick=”code_collapse_toggle(this);” height=”16″ alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/ExpandedBlockStart.gif” width=”11″ align=”top”><span id=”Code_Closed_Text_104722″ style=”border-right: #808080 1px solid; border-top: #808080 1px solid; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”>控件Code<span id=”Code_Open_Text_104722″ style=”display: none”><img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Collections.Generic;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Collections;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.ComponentModel;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Linq;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Text;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Web;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Web.UI;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>using<span style=”color: #000000″>System.Web.UI.WebControls;<img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><img alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/None.gif” align=”top”><span style=”color: #0000ff”>namespace<span style=”color: #000000″>ServerControls<img id=”Codehighlighter1_240_3766_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”http://www.jb51.cc/Images/OutliningIndicators/ExpandedBlockStart.gif” align=”top”><img id=”Codehighlighter1_240_3766_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedBlock.gif” align=”top”><span id=”Codehighlighter1_240_3766_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_240_3766_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>[ToolboxData(<span style=”color: #800000″>”<span style=”color: #800000″><{0}:DropDownTreeListrunat=server></{0}:DropDownTreeList><span style=”color: #800000″>”<span style=”color: #000000″>)]<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>public<span style=”color: #000000″><span style=”color: #0000ff”>class<span style=”color: #000000″>DropDownTreeList:DropDownList<img id=”Codehighlighter1_375_3764_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_375_3764_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_375_3764_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_375_3764_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>private<span style=”color: #000000″><span style=”color: #0000ff”>object<span style=”color: #000000″>dataSource;<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>private<span style=”color: #000000″><span style=”color: #0000ff”>int<span style=”color: #000000″>deep<span style=”color: #000000″>=<span style=”color: #000000″><span style=”color: #800080″>0<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><img id=”Codehighlighter1_452_1120_Closed_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><img id=”Codehighlighter1_452_1120_Open_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><span id=”Codehighlighter1_452_1120_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”>—-重写—-<span id=”Codehighlighter1_452_1120_Open_Text” style=”display: none”><span style=”color: #0000ff”>#region<span style=”color: #000000″>—-重写—-<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>public<span style=”color: #000000″><span style=”color: #0000ff”>override<span style=”color: #000000″><span style=”color: #0000ff”>object<span style=”color: #000000″>DataSource<img id=”Codehighlighter1_521_701_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_521_701_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_521_701_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_521_701_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>get<span style=”color: #000000″><img id=”Codehighlighter1_551_606_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_551_606_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_551_606_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_551_606_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″><span style=”color: #0000ff”>this<span style=”color: #000000″>.dataSource;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>set<span style=”color: #000000″><img id=”Codehighlighter1_635_691_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_635_691_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_635_691_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_635_691_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>this<span style=”color: #000000″>.dataSource<span style=”color: #000000″>=<span style=”color: #000000″>value;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>public<span style=”color: #000000″><span style=”color: #0000ff”>override<span style=”color: #000000″><span style=”color: #0000ff”>void<span style=”color: #000000″>DataBind()<img id=”Codehighlighter1_750_1101_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_750_1101_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_750_1101_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_750_1101_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>if<span style=”color: #000000″>(ChildProperty<span style=”color: #000000″>==<span style=”color: #000000″><span style=”color: #0000ff”>null<span style=”color: #000000″>)<img id=”Codehighlighter1_803_878_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_803_878_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_803_878_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_803_878_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>throw<span style=”color: #000000″><span style=”color: #0000ff”>new<span style=”color: #000000″>Exception(<span style=”color: #800000″>”<span style=”color: #800000″>ChildProperty参数必须设置<span style=”color: #800000″>”<span style=”color: #000000″>);<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>this<span style=”color: #000000″>.Items.Clear();<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>ListItemCollectionitems<span style=”color: #000000″>=<span style=”color: #000000″>ConvertTreeToList(dataSource);<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>foreach<span style=”color: #000000″>(ListItemitem<span style=”color: #0000ff”>in<span style=”color: #000000″>items)<img id=”Codehighlighter1_1036_1089_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_1036_1089_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_1036_1089_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_1036_1089_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>this<span style=”color: #000000″>.Items.Add(item);<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”><span style=”color: #0000ff”>#endregion<span style=”color: #000000″><span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><img id=”Codehighlighter1_1131_2931_Closed_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><img id=”Codehighlighter1_1131_2931_Open_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><span id=”Codehighlighter1_1131_2931_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”>—-私有方法—-<span id=”Codehighlighter1_1131_2931_Open_Text” style=”display: none”><span style=”color: #0000ff”>#region<span style=”color: #000000″>—-私有方法—-<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>private<span style=”color: #000000″>ListItemCollectionConvertTreeToList(<span style=”color: #0000ff”>object<span style=”color: #000000″>root)<img id=”Codehighlighter1_1226_1427_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_1226_1427_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_1226_1427_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_1226_1427_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>deep<span style=”color: #000000″>=<span style=”color: #000000″><span style=”color: #800080″>0<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>ListItemCollectionlist<span style=”color: #000000″>=<span style=”color: #000000″><span style=”color: #0000ff”>new<span style=”color: #000000″>ListItemCollection();<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>list.Add(GetListItem(root));<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>ConvertTree(list,root);<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″>list;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img id=”Codehighlighter1_1436_1572_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_1436_1572_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_1436_1572_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”>/**/<span id=”Codehighlighter1_1436_1572_Open_Text”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″>
<span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″>将对象转换为ListItem<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″>
<span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″><paramname=”root”><span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #000000″><span style=”color: #0000ff”>private<span style=”color: #000000″>ListItemGetListItem(<span style=”color: #0000ff”>object<span style=”color: #000000″>root)<img id=”Codehighlighter1_1630_1934_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_1630_1934_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_1630_1934_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_1630_1934_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>ListItemitem<span style=”color: #000000″>=<span style=”color: #000000″><span style=”color: #0000ff”>new<span style=”color: #000000″>ListItem();<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>item.Text<span style=”color: #000000″>=<span style=”color: #000000″>GetDeepChar()<span style=”color: #000000″>+<span style=”color: #000000″>root.GetType().GetProperty(<span style=”color: #0000ff”>this<span style=”color: #000000″>.DataTextField).GetValue(root,<span style=”color: #0000ff”>null<span style=”color: #000000″>).ToString();<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>item.Value<span style=”color: #000000″>=<span style=”color: #000000″>root.GetType().GetProperty(<span style=”color: #0000ff”>this<span style=”color: #000000″>.DataValueField).GetValue(root,<span style=”color: #0000ff”>null<span style=”color: #000000″>).ToString();<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″>item;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>private<span style=”color: #000000″><span style=”color: #0000ff”>void<span style=”color: #000000″>ConvertTree(ListItemCollectionlist,<span style=”color: #0000ff”>object<span style=”color: #000000″>root)<img id=”Codehighlighter1_2014_2589_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2014_2589_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2014_2589_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_2014_2589_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>object<span style=”color: #000000″>childs<span style=”color: #000000″>=<span style=”color: #000000″>root.GetType().GetProperty(<span style=”color: #0000ff”>this<span style=”color: #000000″>.ChildProperty).GetValue(root,<span style=”color: #0000ff”>null<span style=”color: #000000″>);<span style=”color: #008000″>//<span style=”color: #008000″>获得Child的集合<span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #000000″><span style=”color: #0000ff”>if<span style=”color: #000000″>(childs<span style=”color: #000000″>==<span style=”color: #0000ff”>null<span style=”color: #000000″>)<img id=”Codehighlighter1_2164_2203_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2164_2203_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2164_2203_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_2164_2203_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>if<span style=”color: #000000″>(<span style=”color: #000000″>!<span style=”color: #000000″>(childs<span style=”color: #0000ff”>is<span style=”color: #000000″>ICollection))<img id=”Codehighlighter1_2257_2353_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2257_2353_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2257_2353_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_2257_2353_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>throw<span style=”color: #000000″><span style=”color: #0000ff”>new<span style=”color: #000000″>Exception(<span style=”color: #800000″>”<span style=”color: #800000″>数据源的<span style=”color: #800000″>”<span style=”color: #000000″>+<span style=”color: #000000″>ChildProperty<span style=”color: #000000″>+<span style=”color: #800000″>”<span style=”color: #800000″>属性必须实现ICollection接口<span style=”color: #800000″>”<span style=”color: #000000″>);<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>deep<span style=”color: #000000″>++<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>foreach<span style=”color: #000000″>(<span style=”color: #0000ff”>object<span style=”color: #000000″>child<span style=”color: #0000ff”>in<span style=”color: #000000″>(ICollection)childs)<img id=”Codehighlighter1_2443_2559_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2443_2559_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2443_2559_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_2443_2559_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>list.Add(GetListItem(child));<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>ConvertTree(list,child);<span style=”color: #008000″>//<span style=”color: #008000″>递归转换下一层节点<span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”><span style=”color: #000000″>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>deep<span style=”color: #000000″>–<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img id=”Codehighlighter1_2598_2697_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2598_2697_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2598_2697_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”>/**/<span id=”Codehighlighter1_2598_2697_Open_Text”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″>
<span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″>根据节点的深度返回节点前的占位字符<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″>
<span style=”color: #008000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”><span style=”color: #808080″>///<span style=”color: #008000″><span style=”color: #808080″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #000000″><span style=”color: #0000ff”>private<span style=”color: #000000″><span style=”color: #0000ff”>string<span style=”color: #000000″>GetDeepChar()<img id=”Codehighlighter1_2742_2912_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2742_2912_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2742_2912_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_2742_2912_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>string<span style=”color: #000000″>str<span style=”color: #000000″>=<span style=”color: #000000″><span style=”color: #800000″>””<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>for<span style=”color: #000000″>(<span style=”color: #0000ff”>int<span style=”color: #000000″>i<span style=”color: #000000″>=<span style=”color: #000000″><span style=”color: #800080″>0<span style=”color: #000000″>;i<span style=”color: #000000″><<span style=”color: #000000″>deep;i<span style=”color: #000000″>++<span style=”color: #000000″>)<img id=”Codehighlighter1_2828_2876_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_2828_2876_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_2828_2876_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_2828_2876_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>str<span style=”color: #000000″>+=<span style=”color: #000000″>DeepChar;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″>str;<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”><span style=”color: #0000ff”>#endregion<span style=”color: #000000″><img id=”Codehighlighter1_2940_3758_Closed_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><img id=”Codehighlighter1_2940_3758_Open_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><span id=”Codehighlighter1_2940_3758_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”>—-公开的属性—-<span id=”Codehighlighter1_2940_3758_Open_Text” style=”display: none”><span style=”color: #0000ff”>#region<span style=”color: #000000″>—-公开的属性—-<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>[Description(<span style=”color: #800000″>”<span style=”color: #800000″>表示深度增加的字符<span style=”color: #800000″>”<span style=”color: #000000″>)]<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>public<span style=”color: #000000″><span style=”color: #0000ff”>string<span style=”color: #000000″>DeepChar<img id=”Codehighlighter1_3036_3359_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3036_3359_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_3036_3359_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3036_3359_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>get<span style=”color: #000000″><img id=”Codehighlighter1_3066_3298_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3066_3298_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_3066_3298_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3066_3298_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>if<span style=”color: #000000″>(ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>DeepChar<span style=”color: #800000″>”<span style=”color: #000000″>]<span style=”color: #000000″>==<span style=”color: #000000″><span style=”color: #0000ff”>null<span style=”color: #000000″><span style=”color: #000000″>||<span style=”color: #000000″>ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>DeepChar<span style=”color: #800000″>”<span style=”color: #000000″>].ToString()<span style=”color: #000000″>==<span style=”color: #800000″>””<span style=”color: #000000″>)<img id=”Codehighlighter1_3175_3227_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3175_3227_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_3175_3227_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3175_3227_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″><span style=”color: #800000″>”<span style=”color: #800000″>–<span style=”color: #800000″>”<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″>ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>DeepChar<span style=”color: #800000″>”<span style=”color: #000000″>].ToString();<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img id=”Codehighlighter1_3315_3349_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3315_3349_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span style=”color: #0000ff”>set<span style=”color: #000000″><span id=”Codehighlighter1_3315_3349_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3315_3349_Open_Text”><span style=”color: #000000″>{ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>DeepChar<span style=”color: #800000″>”<span style=”color: #000000″>]<span style=”color: #000000″>=<span style=”color: #000000″>value;}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”>[Description(<span style=”color: #800000″>”<span style=”color: #800000″>对象的子节点集合属性名<span style=”color: #800000″>”<span style=”color: #000000″>)]<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>public<span style=”color: #000000″><span style=”color: #0000ff”>string<span style=”color: #000000″>ChildProperty<img id=”Codehighlighter1_3441_3739_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3441_3739_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_3441_3739_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3441_3739_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>get<span style=”color: #000000″><img id=”Codehighlighter1_3471_3673_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3471_3673_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_3471_3673_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3471_3673_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>if<span style=”color: #000000″>(ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>ChildProperty<span style=”color: #800000″>”<span style=”color: #000000″>]<span style=”color: #000000″>==<span style=”color: #000000″><span style=”color: #0000ff”>null<span style=”color: #000000″>)<img id=”Codehighlighter1_3545_3597_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3545_3597_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span id=”Codehighlighter1_3545_3597_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3545_3597_Open_Text”><span style=”color: #000000″>{<img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″><span style=”color: #0000ff”>null<span style=”color: #000000″>;<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/InBlock.gif” align=”top”><span style=”color: #0000ff”>return<span style=”color: #000000″>ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>ChildProperty<span style=”color: #800000″>”<span style=”color: #000000″>].ToString();<img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img id=”Codehighlighter1_3690_3729_Open_Image” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockStart.gif” align=”top”><img id=”Codehighlighter1_3690_3729_Closed_Image” style=”display: none” onclick=”code_collapse_toggle(this);” alt=”” src=”/Images/OutliningIndicators/ContractedSubBlock.gif” align=”top”><span style=”color: #0000ff”>set<span style=”color: #000000″><span id=”Codehighlighter1_3690_3729_Closed_Text” style=”border-right: #808080 1px solid; border-top: #808080 1px solid; display: none; border-left: #808080 1px solid; border-bottom: #808080 1px solid; background-color: #ffffff”><img alt=”” src=”https://www.jb51.cc/res/2019/02-14/22/a76e9bb6ed00cf1c9c9f4ee2f04b558b.gif”><span id=”Codehighlighter1_3690_3729_Open_Text”><span style=”color: #000000″>{ViewState[<span style=”color: #800000″>”<span style=”color: #800000″>ChildProperty<span style=”color: #800000″>”<span style=”color: #000000″>]<span style=”color: #000000″>=<span style=”color: #000000″>value;}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”><span style=”color: #0000ff”>#endregion<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedSubBlockEnd.gif” align=”top”>}<span style=”color: #000000″><img alt=”” src=”/Images/OutliningIndicators/ExpandedBlockEnd.gif” align=”top”>}<span style=”color: #000000″>
具体调用示例: