2016-10-27 8 views
-1

私はデータベースに接続しています。私はそのデータベースからDatabindingを使用するDataViewGridを作成しました。 私は行と列をヘッダーとして使用したいと考えています。今のところ、ヘッダーとして列だけがあります。 私はVisual Studio 15を使用しており、Designerを使用したいと考えています。 誰もこれをしましたか?または、データベースに接続され、行と列の側にヘッダーがある、テーブルを作成するためのより良いWindows.Formを知っていますか? DevExpress社PivotGridのような事前にC#DataGridViewはヘッダーとして行と列を使用します

Thxを

+0

私はあなたが何を望んでいるか分かりません。 RowHeaderセルにいくつかの情報(現在表示されている行番号?)を表示しますか?自然なコンテンツがないので、各行に割り当てる必要があります。 – TaW

+0

Nopeプランはデータベースからデータを取り出してテーブルに表示していますが、Datagridviewは単に列ヘッダーを使用していました。デザイナーでヘッダーとして行を追加できませんでした。しかし、私はピボットグリッドを使用しますが、それは良いと思われます – Montezuma

答えて

0

サードパーティグリッドあなたがSTHするために行うことができます。このような。基本的なdataGridViewは私が知る限りRowHeaderを提示することはできません。 RowHeader情報を保持するDataSourceのカスタム列を作成し、これを最初の列として表示できます。最初の列のレイアウトを少し変更すると、おそらくRowHeaderのように見えます。私は基本的なデータグリッドビューで知っている唯一のトリックだろう。

+0

Thx、私はこれを試してみました、そして行と列ヘッダーを持ってinculded多くの機能を持っているように思える – Montezuma

+0

_基本DataGridViewは私が知る限りRowHeaderを提示することができません_そうですね。ベータの答えを見てください。箱の外にあるDGVで簡単に行えるような高価な製品を推薦するのはむしろ奇妙なことです。 – TaW

2

要件はあまり明確ではありませんが、行ヘッダーと列ヘッダーをカスタマイズしたいと思います。 dataGridViewはおそらく、Windowsフォームのデータを表示するのに最適なコントロールの1つです。私は次の典型的な要件を行う方法を示します。

  1. はタイトルケースまたは大文字
  2. 列は以下

コードは、C#である特定の名前行ヘッダ上の

  • 表示する行番号をヘッダーのカスタマイズで列ヘッダーを表示するには

    //Show Columns in Title, Lower(textInfo.ToLowerCase) or Upper case textInfo.ToUpperCase 
        System.Globalization.TextInfo textInfo = new System.Globalization.CultureInfo("en-US", false).TextInfo; 
        foreach (DataGridViewColumn col in dataGridView.Columns) 
        { 
         col.HeaderText = textInfo.ToTitleCase(col.HeaderText); 
        } 
    
    //Customize specific column headers, using name or column index 
        dataGridView.Columns["number"].HeaderText = "No."; 
        dataGridView.Columns["quantity"].HeaderText = "Product Quantity"; 
        dataGridView.Columns[0].HeaderText = "Code";  
    
    //Set Row headers with numbers 
        int rowNumber = 1; 
        foreach (DataGridViewRow row in dataGridView.Rows) 
        { 
         if (row.IsNewRow) continue; 
         row.HeaderCell.Value = "Row " + rowNumber; 
         rowNumber = rowNumber + 1; 
        } 
        dataGridView.AutoResizeRowHeadersWidth(
        DataGridViewRowHeadersWidthSizeMode.AutoSizeToAllHeaders); 
    

    Reference

  • +0

    これは、行番号を数える列を追加するだけですか? – Montezuma

    +0

    列を追加するのではなく、既存のRowHeader列を編集します。したがって、dataGridView.RowHeaderVisible = trueにする必要があります。 – Vectoria

    関連する問題