2016-07-04 6 views
0

Im Visual Studio 2015 Community C#を使用しています。 Windowsフォームに2つのラベルがあり、Label1とLabel2を想定しています。 これらのラベルには、ユーザー入力(名字と姓)が入力されます。 実行時にファーストネームがラストネームを重ねることがないように、それらの間にスペースを入れる方法。実行時に2つのラベル間のスペースを制御する方法

例えば
     AbrahLincoln     Abraham Lincoln 
       (Label1^)(^Label2)    (^Label1) (^Label2) 

:それには、この^作り方>>>>>>>>>>>> ^^

私は他の名前のために、ランタイム前に、フォームのデザインにスペースを入れるためならばこれは次のようになります:ジョン(不必要なスペース)Doe

あなたは私の問題を理解していたと思います。 お時間をいただきありがとうございます。 :D

答えて

1

コントロールは座標に基づいた形式で配置されています。幸いなことに、これらのコントロールには、コントロールの上、左、右、下の座標を示すプロパティがあります。したがって、テキストを設定した後、適切なラベルを動的に移動することができます。

Label2.Point = new Point(Label1.Right + 5, Y-coord); 

簡単な方法は、デザイナーのラベルの特性を用いて約プレーするだろう。

+0

ありがとうございます!あなたの助けにはなりますが、どのラベルのプロパティでより具体的になりますか? @horHAY –

+0

autosizeプロパティをfalseに変更して、ラベルを固定サイズにすることができます。次に、左手のラベルで、RightToLeftをyesに設定します。それはいつも他のラベルの隣にあります。 – horHAY

1

また、anchorlabel1右側とlabel2左側を試すこともできます。そうすれば、真ん中の線がきれいになり、テキストが大きくなるにつれて外側に押し出されるので、内側に重なり合わない。

しかし、あなたにはアンカーするオブジェクトが必要です。そして幸いにもこれにはSplitContainerの作品が優れています。

enter image description here

またオフにAutoSizeプロパティを設定し、ラベルの幅を限界いっぱいまで考えます。あなたが期待する文字列のための十分な大きさ。

+0

これはうまくいくはずです。または、自動サイズ変更からラベルを停止し、最も幅広い文字列の幅に合わせて、左揃えのテキストを右揃えに、右揃えのテキストを左揃えに設定します。 –

+0

@MatthewWatson左揃えのテキストを右揃えに、右揃えを左揃えに設定する方法は? –

+1

@DheerajDevaraj外観の下にあるF4キーを押してラベルをクリックすると、TextAlignプロパティが表示されます。 – Mfusiki

0

あなたは1つのラベルを作ったと考えましたか?

theOnlyLabel.Text = $"{dataObject.FirstName} {dataObject.LastName}"; 

か、あなたがそうでなければ、

theOnlyLabel.Text = $"{txtFirstName.Text} {txtLastName.Text}"; 

のようなものをテキストボックスを使用している場合、私は怖いのように、あなたはあなたの最初または最後のこれら2つのラベルを毎回再調整する必要があると思います名前の変更。

関連する問題