Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 智能感知的定位_C#_Visual Studio - Fatal编程技术网

C# 智能感知的定位

C# 智能感知的定位,c#,visual-studio,C#,Visual Studio,如何定位上下文提示?大概是这样的: 下面是使用此代码的文本: Point point = this.rtb.GetPositionFromCharIndex(rtb.SelectionStart); this.lb.Location = point; 注意:上面的代码输出是上下文提示,或者IntelliSense将位于rtb中键入的文本旁边。不在下面,因为我在选择开始中设置了它,但我只想添加像“+”\n”这样的内容,以便将它放在下面。在这里,将它放在RichTextBox的K

如何定位上下文提示?大概是这样的:

下面是使用此代码的文本:

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

注意:上面的代码输出是上下文提示,或者IntelliSense将位于rtb中键入的文本旁边。不在下面,因为我在选择开始中设置了它,但我只想添加像“+”\n”这样的内容,以便将它放在下面。

在这里,将它放在
RichTextBox的
KeyUp
事件中:

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作为填充


你可能需要一些额外的逻辑来处理更大的字体。

它在下面,先生,但是当我在rtb中键入更多的单词时,它会储存在一个位置,不会移动…你应该把它放在
RichTextBox
KeyUp
事件中,这样它在每次按键后都会更新…我会上传当前输出的屏幕截图,先生,可以吗自动的打字的时候?当我使用按键up时,我看到它起作用了,但当它只是内部文本更改时,我就不起作用了。没问题。此外,您可能希望保存字体的度量值,以便在用户每次按键时不会创建新的
图形
对象。