1

Visual Studio 2010 で C# を使用して、従業員の FirstName と LastName を入力するための 2 つの TextBox と Web ベースの ASP.NET アプリケーションのボタンを作成しました。ボタンをクリックすると、TextBox に入力する値は次のようになります。データベースに保存されずに Gridview に表示されます。

どうやってやるの?上記の機能を実行するためのサンプル コードを提供できますか?

4

4 に答える 4

1

これは機能するコードです。

protected void Page_Load(object sender, EventArgs e)
{
        dt = new DataTable();
        DataColumn dc1 = new DataColumn("FIRST NAME");
        DataColumn dc2 = new DataColumn("LAST NAME");
        dt.Columns.Add(dc1);
        dt.Columns.Add(dc2);
        DataRow dr1 = dt.NewRow();
        GridView1.DataSource = dt;
        GridView1.DataBind();
}
DataTable dt;

protected void Button1_Click(object sender, EventArgs e)
{
    DataRow dr1 = dt.NewRow();
    dr1[0] = TextBox1.Text;
    dr1[1] = TextBox2.Text;
    dt.Rows.Add(dr1); 
    GridView1.DataSource = dt;
    GridView1.DataBind();
}
于 2013-02-15T05:38:07.290 に答える
0

次のようなコードで gridview にアクセスできます。

var gridview = document.getElementById("<%=Gridview1.ClientID%>");

そのグリッドビューでアクセスできるようになった後、クライアント側で情報を更新/追加/削除するメソッドになります。ただし、DB の情報を更新したことをサーバー側にも伝える必要があることに注意してください。そうすれば、変更を DB に保存できます。DBのデータを更新するためにajax
リクエストを 送信し、コードを使用してjavascriptからグリッドにアクセス、クライアント側でjavascriptを介してデータを更新する必要があると思います。

于 2013-02-15T05:32:59.793 に答える
0

あなたが提供したコードは正常に動作します。ただし、GridView に追加されるレコードは 1 つだけです。新しいレコードを追加すると、古いデータが置き換えられます。そのため、古い記録を保存する必要があります。

ボタンクリックイベントに以下のコードを入力するだけです。

    protected void Button1_Click(object sender, EventArgs e)
    {
        if(Session["Data"] == null) //Checking if the session contain any value.
        {
            DataTable dt = new DataTable(); //creating the columns.
            dt.Columns.Add("Name");
            dt.Columns.Add("Price");
            dt.Columns.Add("Stock");

            DataRow dr = dt.NewRow(); //Create a new row and add the row values.
            dr[0] = TextBox1.Text;
            dr[1] = TextBox2.Text;
            dr[2] = TextBox3.Text;
            dt.Rows.Add(dr);

            GridView1.DataSource = dt; //Populate values to Gridview.
            GridView1.DataBind();

            Session["Data"] = dt; //Storing that table into session.           
        }
        else
        {
            DataTable dt = new DataTable();
            dt = (DataTable)Session["Data"]; //Retrieve the stored table from session.

            DataRow dr = dt.NewRow(); //Adding a new row to existing table.
            dr[0] = TextBox1.Text;
            dr[1] = TextBox2.Text;
            dr[2] = TextBox3.Text;
            dt.Rows.Add(dr);

            GridView1.DataSource = dt; //Populate new table values to Gridview.
            GridView1.DataBind();

            Session.Remove("Data"); //Clear the session.
            Session["Data"] = dt; //Store the new table to the session.
        }

    }
于 2014-01-31T12:53:49.883 に答える
0

DataTableのテキスト ボックスに入力した値を取得し、そのdataTableをデータソースとしてそのdatagrid に渡します。 このリンクを確認してください http://forums.asp.net/t/1672122.aspx/1

于 2013-02-15T05:36:20.430 に答える