VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1719|回复: 3

vs中 treeview 问题:索引和长度必须引用该字符串内的位置。参数名: length

[复制链接]

1

主题

2

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
发表于 2021-3-9 16:30:02 | 显示全部楼层 |阅读模式
当从数据库读取的值带有中文,在展开节点的时候会出现以下错误

索引和长度必须引用该字符串内的位置。参数名: length

我采用的是:

设置PopulateOnDemand为true,子节点动态生成。
回复

使用道具 举报

0

主题

6

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2021-3-9 18:00:01 | 显示全部楼层
这个跟中文没有什么关系,应该是代码的问题。
回复

使用道具 举报

1

主题

2

帖子

2.00

积分

新手上路

Rank: 1

积分
2.00
 楼主| 发表于 2021-3-9 18:15:02 | 显示全部楼层
private void BindTree()
    {
        YCSD.BLL.Account_Project bll = new YCSD.BLL.Account_Project();
        DataTable dt = bll.GetList(10,1,"FatherNode = '-1'").Tables[0];
        TreeNode myTreeNode;
        for(int i = 0;i<dt.Rows.Count;i++)
        {
            myTreeNode = new TreeNode();
            myTreeNode.Value = dt.Rows[i]["ProjectID"].ToString();
            myTreeNode.Text = dt.Rows[i]["ProjectID"].ToString()+dt.Rows[i]["ProjectName"].ToString();
            myTreeNode.PopulateOnDemand = true;
            TreeView1.Nodes.Add(myTreeNode);
        }
    }
    protected void TreeView1_TreeNodePopulate(object sender, TreeNodeEventArgs e)
    {
        TreeNode newNode;        
        YCSD.BLL.Account_Project bll = new YCSD.BLL.Account_Project();
        DataTable dt = bll.GetList(10, 1, "FatherNode = '" + e.Node.Value + "'").Tables[0];
        for (int i = 0; i < dt.Rows.Count; i++)
        {
            newNode = new TreeNode();
            newNode.Value = dt.Rows[i]["ProjectID"].ToString();
            newNode.Text = dt.Rows[i]["ProjectID"].ToString() + dt.Rows[i]["ProjectName"].ToString();
            //设置PopulateOnDemand为true,确保下面的子节点仍然可以动态生成。
            newNode.PopulateOnDemand = true;
            e.Node.ChildNodes.Add(newNode);
        }
    }
这是两个方法:对英文和数字,来说没有问题,如果是中文就出现问题了
回复

使用道具 举报

0

主题

32

帖子

20.00

积分

新手上路

Rank: 1

积分
20.00
发表于 2021-3-9 19:45:01 | 显示全部楼层
估计和页面编码或者数据库编码有关系。这个一般碰不到。我们这里都没有问题。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表