小编New*_*his的帖子

DropDownList有一个SelectedValue,它是无效的,因为它在项列表中不存在.参数名称:value

我一直在标题行中得到上述错误,这没有任何意义,因为我使用的样本表只有5条记录,每条记录都有一个根据下拉菜单的值.

这是我用来声明下拉列表的代码.我在SQL数据源中加入了两个表来反映我想要在网格视图中填充的内容,并根据需要隐藏列.我使用相同的数据源来填充下拉列表,任何帮助将是最受欢迎的

<asp:DropDownList ID="DropDownListCurrency" runat="server" 
                  CausesValidation="True" DataSourceID="GridView" 
                  DataTextField="Currency" DataValueField="Currency_ID" 
                  AppendDataBoundItems="True"> 

          <asp:ListItem Value="0" Text="&lt;Select&gt;" Enabled="True"></asp:ListItem>
</asp:DropDownList>
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

protected void GridView1_SelectedIndexChanged(object sender, EventArgs e)
{
    try 
    {
        GridViewRow row = GridView1.SelectedRow; 

        AccountNumber.Text = (string)row.Cells[0].Text;
        ....

        DropDownListCurrency.SelectedValue = (string)row.Cells[8].Text;
    }
    catch (Exception ex)
    {
        Console.WriteLine("{0} Exception caught.", ex);
    }        
}
Run Code Online (Sandbox Code Playgroud)

c# sql asp.net visual-studio-2010

8
推荐指数
2
解决办法
5万
查看次数

试图寻找替代foreach的方法

即时尝试编写一个公共函数,可以在我的所有页面调用,以便在插入数据后清除所有文本框.我这样用过它:

public void clean(Control parent)
{
    try
    {
        foreach (Control c in parent)
        {
            TextBox tb = c as TextBox; //if the control is a textbox
                tb.Text = String.Empty; //display nothing
            }
        }



    catch (Exception ex)
    {
        Console.WriteLine("{0} Exception caught.", ex);
    }
}
Run Code Online (Sandbox Code Playgroud)

然而,foreach提出了一个错误说法

"无法对变量类型system.web.ui.control进行操作,因为它不包含getenumerator的公共函数.

任何人都可以建议替代?

c# foreach

2
推荐指数
2
解决办法
216
查看次数

标签 统计

c# ×2

asp.net ×1

foreach ×1

sql ×1

visual-studio-2010 ×1