2009-03-09 14 views

答えて

4

私はやっている方法があると確信していますが、どうして尋ねる必要がありますか?私はそれが見えて、そして/または非常にひどく働き、おそらくユーザを混乱させると思う。

テキストを最後に楕円(...)でトリミングして、ラベルにツールチップを表示させるのはなぜですか?

using System.Windows.Forms; 

var label = new Label(); 
label.AutoSize = false; 
label.AutoEllipsis = true; 
label.Text = "This text will be too long to display all together."; 

var labelToolTip = new ToolTip(); 
labelToolTip.SetToolTip(label, label.Text); 

ここでは、ユーザーがツールチップにカーソルを置いたときにフルテキストが表示されます。ラベル内のテキストは切り詰められ、楕円で終わるので、ユーザーは詳細情報(通常は標準的な方法)を表示することを知っておく必要があります。

1

TextAlignプロパティでは、配置を指定できます。これで右寄せすると、テキストの右側が常に表示されます。しかし、それを左揃えまたは中央揃えにしたいが、依然としてあなたが記述する振る舞いを持っている場合は、Graphics.MeasureStringを使って何らかの測定を実行して、テキストが適合しているかどうかを判断し、調整を動的に変更する必要があります。

0

AFAIKラベルをスクロールする方法はありません。ハックはTextBox(読み取り専用、境界線をオフにする)を使用し、SendKeys.Send()を使用してテキストの末尾にカーソルを移動することです。ような何か:私は(それが1ではなかったように)それはあなたのケースでは問題ではないかもしれない、それはタブ順序内の位置です変更しなければならなかった選択として

 textBox1.Focus(); 
     SendKeys.SendWait("{END}"); 

は表示しないように、テキストを取得します。

関連する問題