1

これは私の最初のASP.Netプロジェクトです。私は慣れていWPFます。言語Visual Studio 2010を使用して、このプロジェクトを で作成しています。 次の質問に対する答えが見つかりません。C#

現場にDataGridいないその部門に与えられたすべての問い合わせを表示する必要がある があります。そのため、部門は.Netアプリを入手して を取得する必要がありSQL Server 2008 DBます。これは私が持っているコードです: PS:SQLステートメントをにロードすることに慣れていますDataTableが、それ.Netがないようです。

だから私が求めているのは、クラスDataGridを使用できないので、このメソッドを に表示するにはどうすればよいですか?DataTable

: コード :

SqlCommand _nuecommand = new SqlCommand();
SqlDataAdapter _nuweadapter = new SqlDataAdapter();
SqlConnection conn = new SqlConnection();

try  

{
    if (conn.State == System.Data.ConnectionState.Closed || 
        conn.State == System.Data.ConnectionState.Broken)
        {
            conn.Open();
        }

        string _sql = "";
        _nuecommand.Connection = conn;
        _sql = 
            "SELECT [Field],[Field],Field,[Field],[VeField],FieldFROM [Table]" + 
                " WHERE [Field] = 'value' AND [Field] = 'Value' AND" + 
                " [Field] IS NULL ";
        _nuecommand.CommandText = _sql;
        _nuweadapter.SelectCommand = _nuecommand;
        _nuecommand.CommandTimeout = 6000;
        _nuweadapter.Fill(_dtnuwe);
        dgnavrae.DataSource = _dtnuwe.DefaultView;
        dgnavrae.databind();

}
catch (Exception ex)
{
    LogInInde.Pages.ErrorPage._error = ex.Message;
    throw ex;
}
4

4 に答える 4

0
  1. SQL Server 2008 を使用した .Net SQL 接続 データベースに接続するために必要なすべてのコードを含み、DataTable を返すカスタム関数クラスを作成することをお勧めします。

  2. @Pranay Rana に同意します。DataBind()関数を使用して を に「バインド」する必要DataGridがありますDataTable

  3. ビューをカスタマイズする場合は、OnRowDataBound イベントを使用できます。

    protected void yourDataGrid_RowDataBound(object sender, DataGridCommandEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { //コード... } }

PS:「DataGridCommandEventArgs」についてはわかりません

于 2012-09-13T07:36:00.597 に答える
0

GridViewAutoGenerateColumnsに設定する必要がありますtrue

于 2012-09-13T07:55:58.503 に答える
0

これは私にとってはうまくいきました!これが私と同じように他の人にも役立つことを願っています:)平和!

SqlCommand _nuecommand = new SqlCommand(); 
SqlDataAdapter _nuweadapter = new SqlDataAdapter(); 
SqlConnection conn = new SqlConnection(); 

try   
{ 
    if (conn.State == System.Data.ConnectionState.Closed ||  
        conn.State == System.Data.ConnectionState.Broken) 
        { 
            conn.Open(); 
        } 

        string _sql = ""; 
        _nuecommand.Connection = conn; 
        _sql =  
            "SELECT [Field],[Field],Field,[Field],[VeField],FieldFROM [Table]" +  
                " WHERE [Field] = 'value' AND [Field] = 'Value' AND" +  
                " [Field] IS NULL "; 
        _nuecommand.CommandText = _sql; 
        _nuweadapter.SelectCommand = _nuecommand; 
        _nuecommand.CommandTimeout = 6000; 
        _nuweadapter.Fill(_dtnuwe); 
        dgnavrae.DataSource = _dtnuwe.DefaultView; 
        dgnavrae.databind(); 

} 
catch (Exception ex) 
{ 
    LogInInde.Pages.ErrorPage._error = ex.Message; 
    throw ex; 
}
于 2012-09-14T06:19:15.393 に答える
0

このようにグリッドビューでデータをバインドするだけです

dgnavrae.DataSource = _dtnuwe.DefaultView;
dgnavrae.DataBind();

DataBindビューデータをグリッドビューにバインドするには、ユーザーメソッドが必要です。

于 2012-09-13T06:58:26.803 に答える