2012-03-22 17 views
0

私はプロジェクトに取り組んでいますが、何かする必要があり、私はそれを行う方法を見つけることができませんでした。 は私が持っている:はい/いいえ は、私のようなものを作るしようとしている:カラム制御を選択してくださいGridView:データベースから選択した行の値を削除する方法と、データベースのdropdownlist = valueを削除する方法はありますか?

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を使用して、gridview内のデータベースから情報をバインドしています。

は、あなたがこの内部のグリッドのようなあなたのドロップダウンを結合している、だから、あなたに

+1

でthis-- 設定AutoPostBack="true" and OnSelectedIndexChanged="ddlchoose_SelectedIndexChange"

を使用しています。 row0の選択された値が 'yes'の場合​​、gridview row0のすべての値をDBに挿入しますか? dropDownはどうですか?特定の行インデックスのDBからrow0として値を取得しますか? –

+0

gridviewからの値は既にデータベースにあり、 "Choose"列はデータベースではクリーンです。ユーザーが値を選択している場合は、データベースの同じ行に追加する必要があります。ドロップダウンはデータベースセルから値を取得します。 –

+0

@InziIrinaあなたの質問は全く明確ではありません。あなたの質問を適切な言葉で表現するのを助けてください。ドロップダウンで「はい」を選択すると、dbに何を追加したいのですか?値「はい」それ自体?もしそうなら、なぜ同じ値を再びドロップダウンに戻すのですか? – nawfal

答えて

0

に感謝しますか?

<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> 

もしそうなら、私は理解していない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(); 
    } 
+0

ありがとう、実際にあなたのコードは何ですか?ドロップダウンに値を保存しますか? –

+0

選択された値に基づいてグリッドの行を更新または削除します。これは、1の場合は1、ドロップダウンの場合は0です。selectedindex change event.I行を更新する方法の論理を教えてください。 。 – incomplete

+0

いや、どうやって値を保存できますか?データベースに挿入するか別の方法がありますか?ページを閉じるとそこにある値 –

関連する問題