こんにちは、仲間のプログラマー、
現在、グリッドビューを介してデータテーブルを表示する Web ページがあります。これはうまくいきます。また、ビューの先頭にチェックボックスの列を挿入しました。これもうまくいきます。しかし、それぞれのチェックボックスが選択されている行のセルから情報を取得しようとすると、空の文字列が返されます。
以下は、この問題に関連するコードの一部です。
.aspx:
protected void Page_Load(object sender, EventArgs e)
{
if (Page.IsPostBack)
{
return;
}
else
{
}
//server connections and whatnot//
OleDbCommand c0 = new OleDbCommand(sql0, myConnection);
myAdapter.SelectCommand = c0;
DataSet ds0 = new DataSet("Contacts");
myAdapter.Fill(ds0);
DataTable dt0 = new DataTable();
dt0 = ds0.Tables["Contacts"];
DataView view = new DataView();
view.Table = dt0;
GV0.DataSource = view;
GV0.DataBind();
myConnection.Close();
}
.cs:
/**
* WHY U NO WORK?!
*/
public void Dedupe(Object o, EventArgs e)
{
String output = "start ";
foreach (GridViewRow row in GV0.Rows)
{
CheckBox cb = (CheckBox)row.FindControl("CheckBox1");
if (cb.Checked == true)
{
output += row.Cells[1];
}
}
Label1.Text = output;
}
どんな助けでも大歓迎です。
乾杯