0

GrdiView に GridView と選択リンクがあり、項目が選択されているときに、GridView の下のテキスト ボックスに内容を読み込んでもらいたいと考えています。私が考えることができる唯一の方法は、選択リンクの onClick 関数のビハインド コードにアクセスすることです。問題は、これを行う方法がわからないことです。

更新されたジャム方法:

C# コード

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
    GridView1.SelectedIndex = e.NewSelectedIndex;
    TextBox1.Text = GridView1.Rows[e.NewSelectedIndex].Cells[0].Text;
}

フロントコード

<asp:GridView ID="GridView1" OnSelectedIndexChanging="GridView1_SelectedIndexChanging" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" 
GridLines="None">

私の方法を更新してください:

protected void GridView1_SelectedIndexChanging(object sender, GridViewSelectEventArgs e)
{
    int i = GridView1.SelectedIndex;
    ds.Tables["Comments"].Rows[i]["Comment"] = TextBox1.Text;
}

これも試しましたが、エラーが発生しました-> System.IndexOutOfRangeException: There is no row at position -1.

ありがとう。

4

3 に答える 3

0

グリッドビューのoORowCommandイベントを使用し、コマンド引数とcommandNameを属性値と同じイベントに渡すことをお勧めします。それならうまくいくと思います。

于 2012-05-17T10:05:10.833 に答える
0

グリッドビューにOnSelectedIndexChangedイベントを添付する必要があります

<asp:GridView OnSelectedIndexChanged="GridView1_SelectedIndexChanged" />

次に、背後のコードで次のことができます。

void GridView1_SelectedIndexChanged(Object sender, EventArgs e)
  {

    GridViewRow row = CustomersGridView.SelectedRow;// you will get the selected row
    someLabel.Text =  row.Cells[0].Text;
  }
于 2012-05-16T19:43:39.440 に答える
0

selectedindexchanged イベントにアタッチしたら、グリッドから値を取得できるように、いくつかのデータキーも設定する必要があります。ここでサンプルを参照してください。

void CustomersGridView_SelectedIndexChanged(Object sender, EventArgs e)
{

  // Determine the index of the selected row.
  int index = CustomersGridView.SelectedIndex;

  // Display the primary key value of the selected row.
  Message.Text = "The primary key value of the selected row is " +
    CustomersGridView.DataKeys[index].Value.ToString() + ".";

}
于 2012-05-16T20:50:04.657 に答える