HIRO's.NET

VB.NET, C#, PowerShell Tipsサイト

 VB.NET, C#, PowerShellを使用しているエンジニアのためのサイト。

 基本的な使用方法から開発で役立つTipsまで幅広く取り扱っています。

HIRO's.NET RSSHIRO's.NET RSS


C# 2005の開発でお困りのことはありませんか?
そんな悩みは当サイトで解決!!

HOME > C# 2005 Tips > コントロール > DataGridView Tips メニュー

27.特定の行や列を固定する

UPDATE:2007/01/23 

<< 前のTips  次のTips >>

 

 DataGridViewは、特定の行や列を固定してスクロールしないようにすることができます。
 列を固定するにはColumsのFrozenプロパティを、行を固定するにはRowsのFrozenプロパティを使用します。


スクロール前


スクロール後(スクロールさせてもProductID列は固定されたまま)

 
サンプル
private void Form1_Load(object sender, EventArgs e)
{
    // 1)変数の宣言
    System.Data.OleDb.OleDbConnection OleConn = new System.Data.OleDb.OleDbConnection();
    System.Data.OleDb.OleDbDataAdapter OleDA;
    DataSet dtSet = new DataSet("PRODUCTS");

    // 2)接続文字列の作成
    OleConn.ConnectionString =
    "Provider=Microsoft.Jet.OLEDB.4.0;" +
    "Data Source=C:\\Work\\Northwind.mdb;" +
    "Persist Security Info=False";

    // 3)データを取得するためのSQL文を作成する
    OleDA = new System.Data.OleDb.OleDbDataAdapter("SELECT * FROM PRODUCTS", OleConn);

    // 4)データセットにデータを取得する
    OleDA.Fill(dtSet, "PRODUCTS");
    
    // DataGridViewにデータを表示
    dataGridView1.DataSource = dtSet.Tables[0];
}

private void button1_Click(object sender, EventArgs e)
{
    //1列目を固定
    dataGridView1.Columns[0].Frozen = true;
    //1行目を固定
    dataGridView1.Rows[0].Frozen = true;
}