2009-02-28 6 views
0

動的データを使用してテーブルから編集可能なデータグリッドを生成していますが、テーブル/グリッドの幅を設定できません。ダイナミックデータで生成されたDataGridの幅を設定する(Entity Framework、in net)

誰かが私に記事を指摘することができますか、または私はこれをどうやって行うことができますか?

ありがとうございます。

よろしくお願いいたします。 Kulu。

答えて

0

スタイルはCSSでDynamicDataによって生成されたページに適用されます。既定では、List.aspxページテンプレートのGridViewにはCssClass = "gridview"があります。そのクラスには、デフォルトのSite.cssファイルで定義されているスタイルがかなりあります。この1を含む:

table.gridview { width: 100%; } 

あなたは(おそらくあなたが探しているではないものを)どこでも、このクラスが使用されているグローバル変更を行うためにそこに幅の値を変更することができます。 1つのエンティティ/ページの幅を変更する場合は、おそらくそのエンティティのカスタムページを作成する必要があります。

ステップ

  1. エンティティののEntitySet /コレクションと同じ名前を持つ〜/ DynamicData/CustomPagesディレクトリ内に新しいフォルダを作成します(例:Employeeエンティティのための〜/ DynamicData/CustomPages /従業員)
  2. List.aspxページを〜/ DynamicData/PageTemplatesディレクトリから作成したばかりの新しいディレクトリにコピーします。 (CodeBehind/aspxファイルの名前空間を調整する必要があります)
  3. カスタムCSSクラス(.aspxファイルで明示的に)を使用すると、ページ上のGidViewの幅を変更できます。

詳細:http://www.asp.net/learn/3.5-SP1/video-445.aspx

-1

ダイナミックデータコントロールの名前の構文を使用してHTMLにCSSを追加できますが、これはコントロールのIDとして使用される正確な名前でなければなりません。

たとえば、grid1という名前の動的データグリッドがpanel1という名前のパネル内にある場合、idは "panel1_grid1"になります。 CSSは次のようになります。

TABLE#panel1_grid1 
{ 
    width: 600px; 
} 

のJavascriptのサンプル回避策は、この中に見つけることができます:

http://forums.asp.net/t/1270184.aspx

+0

私は明示的にコントロールのIDを参照することをお勧めしません。 IDは簡単に変わる可能性があり、この方法は壊れてしまいます。 –

+0

これは単なるサンプルです。クラス名を使用することもできます。しかし、やはりクラス名は紛らわしく、他のHTML要素と共有することもできます。 –

関連する問題