【问题标题】:Add ListBox items from Dataset从数据集中添加 ListBox 项
【发布时间】:2010-02-25 01:18:53
【问题描述】:

我有这个 C# 代码。

j = myAccountDataset.Tables["AccountsTables"].Rows.Count;

                for (i = 0; i <= (j - 1); i++ )
                {

                   listAccountList.Items.Add(myAccountDataset.Tables[0].Rows[i][1]);
                }

                this.listAccountList.SelectedIndex = 0;

这个想法是在数据集中迭代并将项目添加到列表中。 但我收到以下错误: 错误 1 ​​'System.Web.UI.WebControls.ListItemCollection.Add(string)' 的最佳重载方法匹配有一些无效参数

Argument1:无法从 'object' 转换为 'string'

我一定是做错了什么。你的错误是:listAccountList.Items.Add(myAccountDataset.Tables[0].Rows[i][1]);

谢谢。

【问题讨论】:

    标签: asp.net listbox dataset loops for-loop


    【解决方案1】:

    ListItemCollection 的 Add 方法只接受两种类型 - 字符串或 ListItem 请参阅 MSDN 文档here。你需要传递一个字符串而不是一个对象:

    listAccountList.Items.Add(myAccountDataset.Tables[0].Rows[i][1].ToString());
    

    【讨论】:

      【解决方案2】:

      更多描述

      您的 myAccountDataset.Tables[0].Rows[i][1] 是一个无类型对象,Add 方法需要一个字符串,您需要将该对象转换为字符串。执行此操作的最简单方法是将 .ToString() 运算符添加到您的数据行对象

      myAccountDataset.Tables[0].Rows[i][1].Tostring()
      

      【讨论】:

        猜你喜欢
        • 2021-10-18
        • 1970-01-01
        • 2018-02-02
        • 2012-03-19
        • 1970-01-01
        • 1970-01-01
        • 2020-02-17
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多