private ContentControl CreateToolTipContent(ITextBuffer textBuffer)
            {
                var regionSpan   = this.GetRegionSpanForReference();
                var snapshotSpan = textBuffer.CurrentSnapshot.GetSpan(regionSpan);

                var contentType = Presenter._contentTypeRegistryService.GetContentType(
                    IProjectionBufferFactoryServiceExtensions.RoslynPreviewContentType);

                var roleSet = Presenter._textEditorFactoryService.CreateTextViewRoleSet(
                    TextViewRoles.PreviewRole,
                    PredefinedTextViewRoles.Analyzable,
                    PredefinedTextViewRoles.Document,
                    PredefinedTextViewRoles.Editable);

                var content = new ElisionBufferDeferredContent(
                    snapshotSpan,
                    Presenter._projectionBufferFactoryService,
                    Presenter._editorOptionsFactoryService,
                    Presenter._textEditorFactoryService,
                    contentType,
                    roleSet);

                var element = content.Create();

                return(element);
            }
示例#2
0
        public static FrameworkElement GetHint(SnapshotSpan span, IdeServices ideServices)
        {
            var x = new ElisionBufferDeferredContent(span,
                                                     ideServices.ProjectionBufferFactoryService,
                                                     ideServices.EditorOptionsFactoryService,
                                                     ideServices.TextEditorFactoryService);

            return(ideServices.UiDispatcher.Invoke(() => x.Create()));
        }