コントロールには異なるレイアウトがあります
-
10-12-2019 - |
質問
私は小さなウェブ部分を開発し、SharePointは私のコントロールのいくつかを異なるフォント設定と異なる方法で描写することに気づいた。
マイクラスはWebPart
から派生し、例えばDropDownList
、TextBox
、およびButton
に由来しますが、それらのコントロールは等しいレイアウトを持っていません。
例:
DropDownList:
font-family: Verdana, sans-serif;
font-size: 11px;
TextBox:
font-family: Arial;
font-size: 13px;
.
それは正常ですか?コントロールに等しいレイアウトを得ることは可能ですか?
解決
は、そのように発症する多くの理由である可能性があります!この効果を引き起こしているデフォルトのCSSを上書きしているいくつかのCUTOM CSSが必要な場合があります。
これを回避するために...コントロールを作成するときに.cssをコントロールに設定することができます。
TextBox tb = new TextBox();
tb.ID = "changeCss";
tb.Text - "this is a test";
tb.CssClass = "SetTextOnControl";
Label lblTest = new Label();
lblTest.ID = "label";
lblTest.Text = "This has same style";
lblTest.CssClass = "SetTextOnControl";
.
またはASPX
<asp:TextBox ID="changeCss" CssClass="SetTextOnControl" runat="server"></asp:TextBox>
<asp:Label ID="lblTitle" CssClass="SetTextOnControl" runat="server" ></asp:Label>
.
とプロジェクトにCSSクラスを追加する:
プロジェクトを右クリック - > [AddとGoto SharePointのレイアウトマッピングフォルダ(クリック)] - >それは14のハイブのレイアウトフォルダにマッピングされたフォルダを作成します。その新しいフォルダを右クリックして新しいフォルダを作成して、その中に新しいフォルダを作成します。 「スタイルシート」までスクロールして、その項目をクリックして意味のある名前を付けて[追加]をクリックします。これで、新しいCSS CLAに入れることができる新しいCSSファイルを開きます。
.SetTextOnControl
{
font-family: Verdana, sans-serif;
font-size: 11px;
}
.
WebPart内のof.csファイルを取得するので、ロードするCSSを追加できます。
do:
protected override void OnLoad(EventArgs e)
{
base.OnLoad(e);
Microsoft.SharePoint.WebControls.CssRegistration.Register("/_layouts/yourCustomFolder/myCssFileName.css");
}
.
あなたのサイトのすべてのページに追加したい場合は、マスターページに追加して、最後のコード部分を実行する必要はありません。