Webパーツのコントロールのフォーマット
-
16-10-2019 - |
質問
Webパートに複数のコントロールがある場合、それらをすべて「うまく」フォーマットして、すべてが1つの水平線に表示されないようにしますか?
だからあなたはそのようなものを持っているでしょう
- 会社名:
- ファーストネーム:
- 苗字:
- 郵便番号:
- 電子メールアドレス:
テーブルである必要がありますか?
解決
テーブルを使用せずにフォームをフォーマットする方法の例を示す、離れたリストに記事があります
http://www.alistapart.com/articles/prettyaccesibleforms
また、スタックオーバーフローに関する議論もあり、さらにいくつかの例を挙げています。私が同意する傾向があるという1つのポイントは次のとおりです。
「テーブルを使用しない場合、ラベルの幅を事前に知る必要があります。これは、多言語サイト(I18N)の問題になることがよくあります。
テーブルを使用すると、さまざまなサイズのラベルに合わせて伸びています。 CSSだけでも、十分にサポートされた方法でそれを行うことはできません。」 - > https://stackoverflow.com/questions/591539/forms-can-they-be-be-withoutテーブル
他のヒント
同じ方法で、HTMLページにHTML入力をフォーマットします。 Webパートは、レンダリングイベントで定義するときにHTMLを単純にレンダリングします。他のページと同様に、テーブル、Div、CSSスタイルを使用します。
最も簡単な方法は、CreateChildControlsにこのようなリテラルコントロールを追加することです。
LiteralControl lit = new LiteralControl("<br />");
this.Controls.Add(lit);
すべてのコントロールの間にこのようなインスタンスを配置しますが、これを達成するには非常に多くの方法があり、そのすべては標準のASP.NET Webコントロール開発であるため、このサイトの範囲を超えています。
TableとDivを使用できます。一般的にSharePointは、ブラウザに関係なく同じものを表示するため、Webパートに組み込まれているほとんどのテーブルを使用します。
使用するテーブルの数に注意してください。ネストされたテーブルは、ページの時間をレンダリングするためにも非常に悪いです。
適切な状況に適したコンテナを選択することは、何をすべきかです。