GridView: как удалить из базы данных значение из выбранной строки и выпадающий список = значение из базы данных? - PullRequest
0 голосов
/ 22 марта 2012

Я работаю над проектом, но мне нужно что-то сделать, и я не могу найти способ сделать это.У меня есть:

1.GridView
Columns:
No|Name|Age|Choose|Where|
1. Joh  21  Yes/No 

Где Выбор элемента управления столбцом представляет собой выпадающий список с 2 значениями: Да / Нет Я пытаюсь сделать что-то вроде:

If dropdownlist.selected value = "Yes" 
{
Insert Dropdownlist Selected value in the database cell "Choose" , and it should insert the value in the current editing row in the database.
And Dropdownlist value to get the value from the database cell.
}
If dropdownlist value = "NO" then delete the value from the database row.

Как я могу это сделать?или есть другой способ?Я использую sqldatasource для привязки информации из базы данных в сетке.

Спасибо

1 Ответ

0 голосов
/ 22 марта 2012

Итак, вы привязываете свой выпадающий список, как этот, внутри сетки?

 <asp:DropDownList ID = "ddlchoose" runat="server" 
  SelectedValue='<%# Eval("Active") %>' >      
  <asp:ListItem Text="Yes" Value="1"></asp:ListItem> 
  <asp:ListItem Text="No" Value="0"></asp:ListItem> 
  </asp:DropDownList> 

Если это так, используйте это - Установите AutoPostBack="true" and OnSelectedIndexChanged="ddlchoose_SelectedIndexChange"

На aspx.cs

protected void ddlchoose_SelectedIndexChange(object sender, EventArgs e)
    {           
        DropDownList ddlchoose= (DropDownList)sender;

        // get reference to the row
        GridViewRow gvr = (GridViewRow)(((Control)sender).NamingContainer);

        //Get the reference of this ddlchoose
        DropDownList refddlchoose = (DropDownList)gvr.FindControl("ddlchoose");
        Control ddlchooseParent = refddlchoose.Parent;

        int roeid = Convert.ToInt32((gridview1.SelectedRow.FindControl("ID")).ToString());
        if(ddlchoose.SelectedValue=="1")
        {
         //Update method
        Update(roeid , ddlchoose.SelectedValue.Trim());
        }
        else if(ddlchoose.SelectedValue=="0")
        {
        //Delete method
        Delete(roeid);
        }
        gridview1.DataBind();
    }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...