Visual studio 2015 Visual Studio快速修复程序能否与用户或主机交互?
我们正在创建一个快速修复程序,如果我们可以与用户交互,那将是非常棒的 例如,我们想要打开一个网站、显示一个表单(例如向导)或获取一个主机实例(通过DTE) 例如,当Visual Studio显示bobble而不是quick fix时,我们希望打开一个表单:Visual studio 2015 Visual Studio快速修复程序能否与用户或主机交互?,visual-studio-2015,roslyn,analyzer,Visual Studio 2015,Roslyn,Analyzer,我们正在创建一个快速修复程序,如果我们可以与用户交互,那将是非常棒的 例如,我们想要打开一个网站、显示一个表单(例如向导)或获取一个主机实例(通过DTE) 例如,当Visual Studio显示bobble而不是quick fix时,我们希望打开一个表单: 我们可以这样做,或者在Visual Studio 2015中使用沙箱运行分析器?我认为您不能通过分析器/诊断方法来实现这一点。(我一直在等待回应,以防有人知道有可能想要回复) 然而,我相当肯定你可以通过一个“灯泡建议”来完成你想做的事情。灯
我们可以这样做,或者在Visual Studio 2015中使用沙箱运行分析器?我认为您不能通过分析器/诊断方法来实现这一点。(我一直在等待回应,以防有人知道有可能想要回复) 然而,我相当肯定你可以通过一个“灯泡建议”来完成你想做的事情。灯泡建议比分析器稍微复杂一些,但更可定制 可以在MSDN上找到完整的演练: 特别是,你应该看看。其实施情况如下:
public Task<object> GetPreviewAsync(CancellationToken cancellationToken)
{
var textBlock = new TextBlock();
textBlock.Padding = new Thickness(5);
textBlock.Inlines.Add(new Run() { Text = m_upper });
return Task.FromResult<object>(textBlock);
}
公共任务GetPreviewAsync(CancellationToken CancellationToken)
{
var textBlock=新的textBlock();
textBlock.Padding=新厚度(5);
Add(newrun(){Text=m_upper});
返回Task.FromResult(文本块);
}
在本例中,他们返回的是文本块
,但此时您应该能够返回自定义表单
您还必须在中实现其他方法以将所有内容连接起来
实际上,您可以看到所有与Roslyn相关的灯泡动作都实现了
isuggestation
。它们的实现在类中可用。很好!!这就是我们需要的。我将尝试这样做,并在同一个vsix中部署这两个加载项