2013-08-06 65 views
0

如何在编辑器中插入带有点击事件或自定义按钮的图标。 我想创建看起来像R#或CodeRush的控件,然后点击图标打开智能标签。 对不起,我的英语不好。 谢谢。文本编辑器中的Visual Studio扩展图标

截图:

创建智能标签,但对文字或标准的重构标志标准标志。我想要自定义按钮智能标签。

+1

你真的需要提供更多的细节。你试过什么了? –

+0

图标是一个图像,它不能有点击事件,我不知道R#/ CodeRush是什么,你应该更新你的问题,包括更多的细节 – Sayse

+0

你好。增加了截图。 – Sequd

回答

0

当您创建智能标签时,您可以设置ISmartTagSession.IconSource来设置要显示的图标。

+0

它是名单中的一个smarttag的图标源?在打开智能标签之前,我需要图标。 – Sequd

+0

可以在视图中创建并插入按钮,但点击时如何打开smarttags? – Sequd

+0

会话是顶级项目,包含操作列表。每个智能标签操作也有一个单独的图标属性。您的其他问题尚不清楚,但如果与此无关,最好关闭此问题并开始新问题。 –

0

我创建了usercontrol并在编辑器中插入。 旧控件SmartTag删除。 如何在我的usercontol中添加智能标记操作?控制有菜单,但不能添加SmartTagActions。 如何让我的控件创建而不是标准?标准控制始终创建。

private bool ButtonSmartTag(ITextView view) 
    { 
     foreach (ISmartTagSession s in _broke.GetSessions(view)) 
     { 
      var wpfTextView = (IWpfTextView)view;    
      var adornmentLayer = wpfTextView.GetAdornmentLayer("SmartTag"); 

      foreach (var alement in adornmentLayer.Elements) 
      { 
       adornmentLayer.RemoveAllAdornments(); 

       var line = view.GetTextViewLineContainingBufferPosition(_view.Caret.Position.BufferPosition); 
       alement.VisualSpan, "butRe", but, null); 

       var mb = new ReButtonMenu(); 
       mb.Margin = new Thickness(0, line.Top, 0, 0); 
       adornmentLayer.AddAdornment(AdornmentPositioningBehavior.TextRelative, alement.VisualSpan, "butRe", mb, null); 
      } 
     } 
     return false; 
    } 
相关问题