以下是TreeView 的一个数据绑定的实例
protected void Page_Load(object sender, EventArgs e)
{
if ( !IsPostBack )
{
this.TreeView1.Nodes.Clear( );
TreeNode root = new TreeNode( );
this.TreeView1.Nodes.Add( root );
root.Text = "根";
root.Value="G:/20110823";
processNode( root );
}
}
private void processNode( TreeNode root )
{
System.IO.DirectoryInfo di = new System.IO.DirectoryInfo( root.ValuePath );
System.IO.DirectoryInfo[ ] directory = di.GetDirectories( );
foreach ( System.IO.DirectoryInfo item in directory )
{
TreeNode childNode=new TreeNode();
root.ChildNodes.Add( childNode );
childNode.Text = item.Name;
childNode.Value = item.Name;
//childNode.Text = di.Name; 如果再循环里再找 di.Name 的话,foreach就会再次把"G:/20110823"的文件夹再次深度遍历,就会形成 "G:/20110823/20110823"的路径,这样也是可以找到文件的只是重复显示了20110823这个文件夹,但是报错的原因是机器的cup处理器处理的速度原因,没有计算出来导致报黄页。
//childNode.Value = di.Name;
processNode( childNode );
}
}