2013-04-12 159 views
1

如何定位上下文提示?事情是这样的:智能感知的定位

http://i.stack.imgur.com/iFuaq.png

下面的文本使用此代码:以上

Point point = this.rtb.GetPositionFromCharIndex(rtb.SelectionStart); 
     this.lb.Location = point; 

注码输出是上下文暗示或Intelliense将在RTB键入的文本旁边。不在下面,因为我在选择开始时选择了它,但我只是想添加一些像“\ n”的东西,以便将它放在下面。

回答

0

在这里,你走了,把这个在KeyUp事件RichTextBox的:

using (Graphics g = this.rtb.CreateGraphics()) { 
    point.Y += (int)g.MeasureString("A", rtb.Font).Height + 10; // the 10 is padding 
} 
this.lb.Location = point; 

这将测量字体的高度来计算多远移动吧..然后添加10填充。

尽管你可能需要一些额外的逻辑来获得更大的字体。

+0

它低于先生,但是当我在rtb中输入更多单词时,它存储在一个位置并且不会移动... – Elegiac

+0

您应该将它放在RichTextBox的'KeyUp'事件中,以便在每个键按... –

+0

同样的事情发生先生。 – Elegiac