グリッドビューで特定の行の値を見つける方法を教えてください。グリッドビューに10行4列があるとします。私は行インデックスから行番号を見つけることができることを知っていますが、行5の列2の値が何か(私のgridviewごとに)何かを見つけることができますか、またはセルの値を知ることができますか?gridviewの特定の行の値を見つけるにはどうすればよいですか?
答えて
次を使用します。
.RowsコレクションあなたはFindControl
方法に興味があるなら、あなたのために最も適したイベントがRowDataBound約
CustomersGridView.Rows[rowIndex].Cells[cellIndex].Text
より:
void CustomersGridView_RowDataBound(Object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType == DataControlRowType.DataRow)
{
var control = e.Row.Cell[cellIndex].FindControl("ControlID");
e.Row.Cells[1].Text = ((TypeOfControl)control).Text;
}
}
cellIndexで何を指定する必要がありますか? –
。イベントでテキストが取得されていません。インテリセンスでは出ません。 –
@Xor powerコントロールを必要なタイプにキャストする必要があります。回答を更新しました。 – VMAtm
これはトリックを行う必要があり、列ごとに一つのセルを仮定:
ため、場合(行が構築されている方法に応じて、行5であなたに2列の値を与える
string cellValue = GridView1.Rows[4].Cells[1].Text;
たとえば、1つの列にDropDownListなどのコントロールがある場合)、FindControl(controlID)
を行う方がよい場合があります。 UPDATE
を使用すると、ID =「ddlMyDropDown」と第二列にDropDownList
を持って言う:
DropDownList ddl = (DropDownList)GridView1.Rows[4].FindControl("ddlMyDropDown");
は、なぜあなたは見つけるためにしようとしているに依存します値。あなたが/なぜあなたは値を取得する必要があると思い際の例を与えることができれば、我々はそれがおそらくに行くべきイベントを伝えることができます。
UPDATE 2
を行のボタンがありますと仮定すると、 、RowCommand
イベントを処理:行のボタンがクリックされるたびに、あなたがクリックされたボタンを確認する必要があると思いますのでRowCommandが、発射されるよう
protected void GridVie1_RowCommand(object sender, GridViewCommandEventArgs e)
{
rowIndex = Convert.ToInt32(e.CommandArgument);
DropDownList ddl = (DropDownList)GridView1.Rows[rowIndex].Cells[1].FindControl("ddlMyDropDown");
// Do something
}
は、しかし、ここで注意が必要ですか。ボタンのCommandNameを設定する場合はe.CommandName
を使用しても構いませんが、あらかじめ定義された名前がいくつかあることに注意してください。
詳細については、GridView.RowCommand Eventを参照してください。
質問をより詳細な情報で更新することができます(なぜ、値を取得する必要があるのか、そしてボタンをクリックするようなGridViewとのやりとりによってそのプロセスが開始される)場合、より正確な回答を提供できます。
私は夜中になってしまいましたが、明日このスレッドで確認します。
FindControlの操作方法は?プラス、コードを置く場所は、どのイベントですか? –
@ Xor power - 私の編集を参照してください。上記の例(ddl)の – Tim
では、クリックした行のユーザーが表示されません。私はコマンドの引数としてID(主キー列)を提供しているので、私はコマンドの引数として与えることはできません。したがって、どちらの行がクリックされたかを知る必要があります。または、コマンドの引数として行インデックスを与えている場合は、IDの値を知る必要があります(主キー列) –
あなたが知っている場合セルの値は、行を見つけることができます
protected void GridView1_DataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
if (e.Row.Cells[0].Text.Contains("sometext"))
{
//code here..
}
}
}
string cellText = gridView.Rows[5].Cells[2].Text;
私はすべてのセルでヌル値を取得していますなぜそうですか? –
行インデックスが0以上かどうかを確認する –
- 1. 特定の値に近い値を見つけるにはどうすればよいですか?
- 2. node.jsの大きなオブジェクトで特定の値を見つけるにはどうすればよいですか?
- 3. 特定の状況で配列内の値を見つけるにはどうすればよいですか?
- 4. Tagプロパティで特定の値を持つTreeViewItemを見つけるにはどうすればいいですか
- 5. javaのjar/zipファイルから特定のディレクトリを見つけるにはどうすればよいですか?
- 6. Jadeのデータ配列内の特定のアイテムを見つけるにはどうすればよいですか?
- 7. tarballのグループ内の特定のファイルを見つけるにはどうすればよいですか?
- 8. qml内のListModel内の特定のListElementを見つけるにはどうすればよいですか?
- 9. 特定のアルファベットで始まるアプリを見つけるにはどうすればよいですか? - Androidランチャー
- 10. IE11 Dev Toolsで特定のファイルを見つけてデバッグするにはどうすればよいですか?
- 11. 特定のアドレスのptepを見つけるにはどうすればよいですか?
- 12. 特定のデータベースの所有者を見つけるにはどうすればよいですか?
- 13. sqlの行の値の複数のカウントを見つけるにはどうすればよいですか?
- 14. Excel-一定値以上の平均値を見つけるにはどうすればよいですか?
- 15. バージョン管理システムで特定の変更を見つけるにはどうすればよいですか?
- 16. UIViewで特定の制約を見つけるにはどうすればよいですか?
- 17. 式を見つけて特定のテキストに置き換えるにはどうすればよいですか?
- 18. DataFieldでGridView内のBoundFieldを見つけるにはどうすればよいですか?
- 19. JNAを使用して特定のプロセスを見つけるにはどうすればよいですか?
- 20. Pythonを使用して特定のファイルを見つけるにはどうすればよいですか?
- 21. テキストファイルの特定の行を見つけて、いくつかの操作を行うにはどうすればよいですか?
- 22. netlogoの特定の座標にあるタートルを見つけるにはどうすればいいですか
- 23. 特定のインデックスを持つNSTableViewの行オブジェクトを特定するにはどうすればよいですか?
- 24. いくつかの値を含むセルを見つけるにはどうすればよいですか?
- 25. アレイ応答の特定のエントリを見つけるにはどうすればいいですか?
- 26. 列に入力された3つの値を見つけるにはどうすればよいですか?
- 27. 特定の値を持つレコードだけが表示されるように、配列の行をフィルタリングするにはどうすればよいですか?
- 28. Rの特定の行の同様の値を決定するにはどうすればよいですか?
- 29. Juliaの行列で値の位置を見つけるにはどうすればいいですか?
- 30. レーキタスクのソースファイルを見つけるにはどうすればよいですか?
GridViewのマークアップと関連するイベントコードを送信すると、表示されている問題の解決に役立ちます。 – Tim