日期:2014-05-20  浏览次数:20814 次

在C# 2005中怎样选中treeview中的一个节点.
在C#   2005中怎样选中treeview中的一个节点,
node.selected=true;
这个命令怎么不行了

------解决方案--------------------
public TreeNode FindTreeNode(String TreeNodeText, TreeNode Pnode )
{
foreach (TreeNode Cnode in Pnode.Nodes)
{
if (Cnode.Text == TreeNodeText)
{
return Cnode;
}

if (FindTreeNode(TreeNodeText, Cnode)==null)
{
return;
}
}
return null;
}
------解决方案--------------------
//--选择操作 最好是用checkbox直观..
//--treeview绑定例子
using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;


public partial class _Default : System.Web.UI.Page
{
private string connstring = ConfigurationManager.ConnectionStrings[ "ConnStr "].ToString();

private bool isHaveCheckBox = false;
private bool isExpanded = false;
private DataTable dtTree = null;
protected void Page_Load(object sender, EventArgs e)
{
//Response.Write( "tttttttttt ");
if (!IsPostBack)
{
AreaTree.Nodes.Add(getRootAreaTreeNode(false, false));
}

}

/// <summary>
/// 获取包含全部子节点的根节点数据
/// </summary>
/// <param name= "haveCheckBox "> 节点是否产生CheckBox </param>
/// <param name= "expanded "> 节点是否展开 </param>
/// <returns> </returns>
public TreeNode getRootAreaTreeNode(bool haveCheckBox, bool expanded)
{
//drPeng.HS.BR.AreaTree brTree = new drPeng.HS.BR.AreaTree();

string rootID = "0001 ";//brTree.getRootAreaTreeID();
string rootName = "中国 ";//brTree.getRootAreaTreeName();
//ds = brTree.getAllAreaTree();

isHaveCheckBox = haveCheckBox;
isExpanded = expanded;

#region populate root node
TreeNode rootNode = new TreeNode();
rootNode.Text = rootName;
rootNode.Value = rootID;
//rootNode. = rootName;
// rootNode.NodeData = "0001 ";

rootNode.Expanded = true;
// rootNode.CheckBox = isHaveCheckBox;
#endregion

DataSet dsTree = SqlHelper.ExecuteDataset(connstring, CommandType.Text, "select * from TB_Area ");
dtTree = dsTree.Tables[0];
this.populateAreaTree(rootID, rootNode);

return rootNode;
}

private void populateAreaTree(string parentID, TreeNode pNode)
{

DataRow[] dRows = dtTree.Select( "ParentAreaCode= ' " + parentID + " ' ");

if (dRows.Length > 0)
{
TreeNode Node = null;
foreach (DataRow drow in dRows)
{
Node = new TreeNode();
Node.Text = drow[ "AreaName "].ToString();
Node.Value = drow[ "AreaCode "].ToString();
//Node.DataItem = Node.Text + "| " + Node.Value;