WinForms
では、私は中央の形でそのラベルを中央にしたいのですが、成功、失敗などラベルはWinFormsの中央に置かれますか?
のような異なるメッセージを表示するようにLabel
を使用しています。私は、ラベルにただ1つの単語または全体の文があるかどうかを中心にしておくソリューションを求めています。
WinForms
では、私は中央の形でそのラベルを中央にしたいのですが、成功、失敗などラベルはWinFormsの中央に置かれますか?
のような異なるメッセージを表示するようにLabel
を使用しています。私は、ラベルにただ1つの単語または全体の文があるかどうかを中心にしておくソリューションを求めています。
設定Label
のFalse
からAutoSize
財産、MiddleCenter
にTextAlign
財産とFill
からDock
プロパティ。
プロパティを設定することで実現します。アンカー:なし
プログラムで設定するためのいくつかのマイナーな追加コンテンツ:
Label textLabel = new Label() {
AutoSize = false,
TextAlign = ContentAlignment.MiddleCenter,
Dock = DockStyle.None,
Left = 10,
Width = myDialog.Width - 10
};
Dockstyleとコンテンツアライメントがニーズと異なる場合があります。たとえば、wpfフォームのシンプルなラベルの場合は、DockStyle.Noneを使用します。
利用可能な領域全体にラベルをドッキングしたくない場合は、TextChangedの代わりにSizeChangedイベントを設定するだけです。各文字を変更すると、autosizeプロパティがTrueに設定されている場合、ラベルの幅プロパティとテキストが変更されます。つまり、どのような数式を使っても、ラベルをフォームの中央に置くことができます。
private void lblReport_SizeChanged(object sender, EventArgs e)
{
lblReport.Left = (this.ClientSize.Width - lblReport.Size.Width)/2;
}
decycloneに感謝します。 Dockが何をするのかガイドできますか? – haansi
'Control.Dock'プロパティ(http://msdn.microsoft.com/en-us/library/system.windows.forms.control.dock.aspx)を使用すると、コントロールを特定の側にドッキング(スティック)できますの容器。たとえば、「左」、「上」、「右」または「下」。 'Fill'はコンテナ内の利用可能なスペースをすべて取るようコントロールに指示します。 – decyclone
フォントサイズを伸ばすための手口はありますか? – Edmondo1984