本文整理汇总了C#中IVsTextView.GetPointOfLineColumn方法的典型用法代码示例。如果您正苦于以下问题:C# IVsTextView.GetPointOfLineColumn方法的具体用法?C# IVsTextView.GetPointOfLineColumn怎么用?C# IVsTextView.GetPointOfLineColumn使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类IVsTextView
的用法示例。
在下文中一共展示了IVsTextView.GetPointOfLineColumn方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: ShowHint
public bool ShowHint(IVsTextView view, TextSpan hintSpan, Func<string, string> getHintContent, string hintText)
{
if (ContextMenuActive)
return false;
var hWnd = view.GetWindowHandle();
int lineHeight;
ErrorHelper.ThrowOnFailure(view.GetLineHeight(out lineHeight));
var ptStart = new Microsoft.VisualStudio.OLE.Interop.POINT[1];
var ptEnd = new Microsoft.VisualStudio.OLE.Interop.POINT[1];
ErrorHelper.ThrowOnFailure(view.GetPointOfLineColumn(hintSpan.iStartLine, hintSpan.iStartIndex, ptStart));
ErrorHelper.ThrowOnFailure(view.GetPointOfLineColumn(hintSpan.iEndLine, hintSpan.iEndIndex, ptEnd));
NemerleNativeMethods.ClientToScreen(hWnd, ref ptStart[0]);
NemerleNativeMethods.ClientToScreen(hWnd, ref ptEnd[0]);
var hintXml = "<hint>" + hintText.Replace("<unknown>", "<unknown>").Replace("\r", "")
.Replace("\n", "<lb/>") + "</hint>";
var rect = new Rect(new Point(ptStart[0].x, ptStart[0].y), new Point(ptEnd[0].x, ptEnd[0].y + lineHeight));
if (Hint.IsOpen)
{
if (Hint.PlacementRect == rect)
{
Hint.Text = hintXml;
return true;
}
Hint.Close();
}
Hint.Show(hWnd, rect, getHintContent, hintXml);
return true;
}