DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

DataGridの行数を取得する

注意:ここで紹介しているDataGridは、System.Windows.Forms名前空間のDataGrid(Windowsフォーム)です。System.Web.UI.WebControls名前空間のDataGrid(Webフォーム)ではありません。

例えばDataGridコントロールのDataSourceプロパティにDataTableオブジェクトが設定されており、そのDataTableの行数を取得するには次のようにすればよいでしょう。

VB.NET
コードを隠すコードを選択
'DataTableの行数の取得
Dim dt As DataTable = CType(DataGrid1.DataSource, DataTable)
Console.WriteLine(dt.Rows.Count)
[C#]
//DataTableの行数の取得
DataTable dt = (DataTable) DataGrid1.DataSource;
Console.WriteLine(dt.Rows.Count);

しかし、DataTableの行数がDataGridに実際に表示されている行数と同じとは限りません。DataGridに実際に表示されている行数を取得するには、BindingManagerBaseのCountプロパティを調べます。

VB.NET
コードを隠すコードを選択
'DataGridの行数の取得
Console.WriteLine( _
    DataGrid1.BindingContext(DataGrid1.DataSource, _
        DataGrid1.DataMember).Count _
    )
C#
コードを隠すコードを選択
//DataGridの行数の取得
Console.WriteLine(
    DataGrid1.BindingContext[DataGrid1.DataSource,
        DataGrid1.DataMember].Count
    );

注意:この記事では、基本的な事柄の説明が省略されているかもしれません。初心者の方は、特に以下の点にご注意ください。

  • .NET Tipsをご利用いただく際は、注意事項をお守りください。