当我编辑我的aspnetmvc视图时,我开始使用代码括号:
<%
和intellisense弹出像
这样的项目<%@ Assembly ... <%@ Control ... <%@ etc ......
这很好,但当我继续我的线并按[=]键时,它会自动选择 <%@ Assembly =%>并完成我的标签。
这不是什么大不了的事,但确实让我感到沮丧,特别是在编辑丢失字段的表格时。
过去有没有人遇到过这个问题,有没有办法在我点击[=]时将<%=添加到intellisense或停止返回其他指令。
我记得在Phil Haacks最近的一次演示中看到同样的问题(他说的是“那是什么?”然后继续)但是我不记得是哪一个。
感谢您的帮助,
哈尔
答案 0 :(得分:1)
或者有简单的解决方案:)
按下以下键:<
%
Esc =
答案 1 :(得分:0)
我想我找到了答案。我创建了以下宏:
Option Strict Off
Option Explicit Off
Imports System
Imports EnvDTE
Imports EnvDTE80
Imports EnvDTE90
Imports System.Diagnostics
Public Module RecordingModule
Sub CleanupImplementedInterface()
DTE.ActiveDocument.Selection.LineDown(True, 7)
DTE.ActiveDocument.Selection.Text = " {get"
DTE.ActiveDocument.Selection.DeleteLeft(3)
DTE.ActiveDocument.Selection.Text = " get; set; }"
DTE.ActiveDocument.Selection.CharRight
DTE.ExecuteCommand ("Edit.Replace")
DTE.Find.FindWhat = " {"
DTE.Find.Target = vsFindTarget.vsFindTargetCurrentDocument
DTE.Find.MatchCase = False
DTE.Find.MatchWholeWord = False
DTE.Find.Backwards = False
DTE.Find.MatchInHiddenText = True
DTE.Find.PatternSyntax = vsFindPatternSyntax.vsFindPatternSyntaxLiteral
DTE.Find.Action = vsFindAction.vsFindActionFind
If(DTE.Find.Execute() = vsFindResult.vsFindResultNotFound) Then
Throw New System.Exception("vsFindResultNotFound")
End If
DTE.Windows.Item("{CF2DDC32-8CAD-11D2-9302-005345000000}").Close
DTE.ActiveDocument.Selection.CharLeft
End Sub
Sub Brackets()
DTE.ActiveDocument.Selection.Text = "<%="
End Sub
End Module
然后在IDE中,我打开了Tools&gt;选项&gt;环境&gt; Keybord
在“显示命令包含:”文本框中,我输入了我的宏名称。
然后我在“使用新的快捷方式:”下拉框中选择了“Html源编辑器”,并按下快捷键Alt-B。
现在,每当我需要一个括号,而不是使用intellisense时,我只需在编辑器中按Alt-B。
丑陋但可行的解决方案。希望他们能在2010年解决这个问题。没看过。
答案 2 :(得分:0)
键入Cntl-Z两次,自动更改将被撤消。您可以针对任何不需要的Intellisense建议执行此操作。