GridViewをコードで更新する方法(MySQL)

| | トラックバック(0)
GridViewの更新はCommandFieldを追加するだけで簡単にできますが、MySQLだとそうはいきません。データソース構成ウィザードでUpdateCommandをうまく作れないためです。
ということでここでは、コードからGridViewを更新する方法をご紹介します。SQLServerであればこんなことは不要なんですけどね。
ここで紹介する画面イメージは以下のようになっています。

gridview1.png






更新したい項目をTemplateFieldにしておきます。GridViewの列の編集から開くダイアログでフィールドを選択して「このフィールドを TemplateField に変換します。」リンクをクリックします。

gridview2.png





















これで基本的には準備完了です。あとはコードを書きます。どのイベントに書くかというと、GridViewのRowUpdaingに記述します。
Protected Sub GridView1_RowUpdating(ByVal sender As Object, ByVal e As _
    System.Web.UI.WebControls.GridViewUpdateEventArgs) Handles GridView1.RowUpdating

  '更新対象の行をGridViewRowオブジェクトとして取得
    Dim row As GridViewRow = GridView1.Rows(e.RowIndex)
    'TemplateFieldのTextBoxのIDを指定して取得
    Dim url As TextBox = CType(row.FindControl("TextBox1"), TextBox)
    Dim title As TextBox = CType(row.FindControl("TextBox2"), TextBox)
    Dim desc As TextBox = CType(row.FindControl("TextBox3"), TextBox)

    'UpdateCommand設定
    SqlDataSource1.UpdateCommand = "UPDATE bookmark.items SET url = ?, title = ?, _
                                                               description = ? WHERE (id = ?)"
    '各パラメータを設定
    SqlDataSource1.UpdateParameters.Add("param1", CStr(url.Text))
    SqlDataSource1.UpdateParameters.Add("param2", CStr(title.Text))
    SqlDataSource1.UpdateParameters.Add("param3", CStr(desc.Text))
    SqlDataSource1.UpdateParameters.Add("param4", CStr(row.Cells(0).Text))

End Sub

これで更新が可能になります。


トラックバック(0)

このブログ記事を参照しているブログ一覧: GridViewをコードで更新する方法(MySQL)

このブログ記事に対するトラックバックURL: http://blog.e-slas.com/weblog/mt-tb.cgi/14

このブログ記事について

このページは、D-ramが2007年12月 7日 13:58に書いたブログ記事です。

ひとつ前のブログ記事は「ASP.NET MySQLへのODBC接続」です。

次のブログ記事は「ASP.NET MySQLへConnector/Netで接続」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Powered by Movable Type 4.01