ページでグリッドビューを使用しています。
ページボタンのクリックイベントで、response.write()
を使用して、選択した行セルのデータを表示したいと思います。
注 ::
ボタンのCommandName
を"selectCol"
に設定してください
2番目のボタンにCommandName
を設定してください。削除に使用します
to"deleteCol"
ボタンのcommand argument
プロパティを設定します。
。aspx
CommandArgument='<%#((GridViewRow)Container).RowIndex%>'
CommandArgument='<%#((GridViewRow)Container).RowIndex%>'
2つのボタン。
。cs
protected void gv_RowCommand(object sender, GridViewCommandEventArgs e)
{
try
{
int index = Convert.ToInt32(e.CommandArgument);
if (e.CommandName == "selectCol")
{
Response.Write(gv.Rows[index].Cells[0].Text); //consider you use bound field and the column you want to show its value is the first column.
}
else if(e.CommandName == "deleteCol")
{
int id = int.Parse(gv.DataKeys[index].Value.ToString());//the primary key for your table.
Delete(id);//method which use (Delete From .... Where id = ....).
}
gv.DataBind();
}
catch (Exception ee)
{
string message = ee.Message;
}
}
こんにちは。
Gridviewフィールドから値を読み取る最も簡単な方法は、次のように書くことです。
your_grid_name.SelectedRow.Cell(* number_of_index *)。text
私の場合、それは:
Dim preventer_name As String
employer_name = poslodavac_grid.SelectedRow.Cells(1).Text
最初のセルインデックスがゼロであり、「asp:CommandField ShowSelectButton」タグが最初のものとしてカウントされないことを覚えておいてください...
グリッドビューでLINK BUTTON
を使用している場合は、ROWCOMMAND
メソッドで次のコードを使用できます。このコードは、特定の選択された行のすべての値を取得します。
// to get the value of the link use the command argument
FaultId = Convert.ToInt32(e.CommandArgument);
// to get the other column values
UserId = Convert.ToInt32(((GridViewRow(((LinkButton)e.CommandSource).NamingContainer)).Cells[1].Text);
Department = ((GridViewRow(((LinkButton)e.CommandSource).NamingContainer)).Cells[2].Text;
ProblemType = ((GridViewRow)(((LinkButton)e.CommandSource).NamingContainer)).Cells[3].Text;
GridView.SelectedRow プロパティを使用します。
String cellText = this.gridView.SelectedRow.Cells[cellIndex].Text;
GridView
コントロールで行を選択する方法については、以下を参照してください。
GridviewのRowCommandイベントで取得できます。
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
if (e.CommandName == "Select")
{
GridViewRow row = (GridViewRow)(((Button)e.CommandSource).NamingContainer);
Response.Write(row.Cells[0].Text);
Response.Write(row.Cells[1].Text);
................
}
}