在“SelectedIndex的”和“的SelectedValue”属性是互斥 [英] The 'SelectedIndex' and 'SelectedValue' attributes are mutually exclusive

查看:939
本文介绍了在“SelectedIndex的”和“的SelectedValue”属性是互斥的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

说实话,这是我第一次看到这样的错误

To be honest, this is my first time seeing such error

The 'SelectedIndex' and 'SelectedValue' attributes are mutually exclusive

这是哪里发生错误。它发生在数据绑定。

This is where the error occurs. It occurs at the databind.

protected void FillDropdown(DropDownList ddl)
{
    using (var connAdd = new SqlConnection("Data Source = localhost; Initial Catalog = MajorProject; Integrated Security= SSPI"))
    {
        connAdd.Open();

        var sql = "Select policeid from PoliceAccount where status ='available' and handle ='offcase' and postedto='" + ddllocation.SelectedValue + "'";
        using (var cmdAdd = new SqlDataAdapter(sql, connAdd))
        {
            DataSet ds2 = new DataSet();
            cmdAdd.Fill(ds2);

            ddl.Items.Clear();
            ddl.DataSource = ds2;
            //error occurs here
            ddl.DataBind();
            ddl.Items.Insert(0, new ListItem("Police ID", ""));
            ddl.SelectedIndex = 0;
        }
    }
}

我不是很清楚为什么他们会说出这样的话。我在DropDownList中使用该FillDropdown。

I'm not very sure why would they say such a thing. I used this FillDropdown in my dropdownlist.

protected void ddlpid1_SelectedIndexChanged(object sender, EventArgs e)
{
    if (ddlpid1.SelectedIndex > 0)
    {
        Session["pid1"] = ddlpid1.SelectedValue;

        ListItem removeItem2 = ddlpid2.Items.FindByValue(ddlpid1.SelectedValue);
        ddlpid2.Items.Remove(removeItem2);
        ListItem removeItem3 = ddlpid3.Items.FindByValue(ddlpid1.SelectedValue);
        ddlpid3.Items.Remove(removeItem3);
        ListItem removeItem4 = ddlpid4.Items.FindByValue(ddlpid1.SelectedValue);
        ddlpid4.Items.Remove(removeItem4);
        ListItem removeItem5 = ddlpid5.Items.FindByValue(ddlpid1.SelectedValue);
        ddlpid5.Items.Remove(removeItem5);
    }
    else if (ddlpid1.SelectedItem.Text.Equals("Police ID"))
    {
        FillDropdown(ddlpid1);
        FillDropdown(ddlpid2);
        FillDropdown(ddlpid3);
        FillDropdown(ddlpid4);
        FillDropdown(ddlpid5);

        ddlpid2.SelectedValue = (String) Session["pid2"];
        ddlpid2_SelectedIndexChanged(this, EventArgs.Empty);

        ddlpid3.SelectedValue = (String) Session["pid3"];
        ddlpid3_SelectedIndexChanged(this, EventArgs.Empty);

        ddlpid4.SelectedValue = (String) Session["pid4"];
        ddlpid4_SelectedIndexChanged(this, EventArgs.Empty);

        ddlpid5.SelectedValue = (String) Session["pid5"];
        ddlpid5_SelectedIndexChanged(this, EventArgs.Empty);
    }
}

我看我的codeS多的时间,我看到的selectedIndex和选择的价值冲突。所有这些单独的工作原理独立的功能。

I look at my codes multiple time and i see a clash in the selectedindex and selected value. All of them works individually as separate functions.

推荐答案

在数据绑定设置的SelectedIndex 1 它应该帮助

Before databind set SelectedIndex to -1 it should help

这篇关于在“SelectedIndex的”和“的SelectedValue”属性是互斥的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆