Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/265.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 正在检索dropdownlist的text属性,但我得到了初始下拉项的文本_C# - Fatal编程技术网

C# 正在检索dropdownlist的text属性,但我得到了初始下拉项的文本

C# 正在检索dropdownlist的text属性,但我得到了初始下拉项的文本,c#,C#,我有一个下拉列表,其中包含按ID列出的gridview项目。当我选择一个项目并尝试删除它时,显示的初始项目将被删除,而不是我选择的项目。以下是我的删除项目代码:- protected void btn_delete_Click(object sender, EventArgs e) { try { string[] titleAndID = DropDownList1.Text.Split(new string[] { "-_-" }, StringSpl

我有一个下拉列表,其中包含按ID列出的gridview项目。当我选择一个项目并尝试删除它时,显示的初始项目将被删除,而不是我选择的项目。以下是我的删除项目代码:-

    protected void btn_delete_Click(object sender, EventArgs e)
{
    try
    {
        string[] titleAndID = DropDownList1.Text.Split(new string[] { "-_-" }, StringSplitOptions.None);
        string ID = titleAndID[1];
        conn.Open();
        SqlDataAdapter sda = new SqlDataAdapter("select * from lol_list where ID=@ID", conn);
        sda.SelectCommand.Parameters.AddWithValue("@ID", Convert.ToInt32(ID));
        conn.Close();
        DataTable dt = new DataTable();
        sda.Fill(dt);
        string picPath = Server.MapPath("~/wPics/") + dt.Rows[0][1].ToString();

        if (File.Exists(picPath))
            File.Delete(picPath);

        SqlCommand cmd = new SqlCommand("delete from lol_list where ID=@ID", conn);
        cmd.Parameters.AddWithValue("@ID", Convert.ToInt32(ID));
        conn.Open();
        cmd.ExecuteNonQuery();
        conn.Close();
        populate_dd();
        Label1.Text = "Deleted!";
        Label1.Visible = true;
        lbl_error.Visible = false;
    }
    catch (Exception ex)
    {
        lbl_error.Text = ex.Message;
        lbl_error.Visible = true;
    }
}

您似乎在DataAdapter填充DataTable之前关闭了连接。这不会引发异常吗?有没有理由不只是将下拉列表绑定到集合并使用selecteditem?是否检查了调试器以查看“ID”是什么值?默认情况下,您只获取列表中的第一项并将其拆分。默认情况下,这是所选的项…它接受最初显示的项的下拉列表文本。在调用此方法之前,是否重新填充ddl?