Я создаю плагин Visual Studio 2013 (нормально, пакет расширения на самом деле), который пытается вставить определенные строки * в открытый файл .vb или .cs, но когда я доберусь до точка фактического вставки текста экземпляр редактора замирает на некоторое время. Если число строк несколько раз, VS вернется через несколько секунд, но для 20 + строк редактор просто не возвращается.Visual Studio зависает при манипулировании TextSelection.Text
Это суть того, что мой код выглядит следующим образом:
String myText = "foo";
DTE dte = this.GetService(typeof(DTE)) as DTE;
EnvDTE.TextSelection selection = (dte.ActiveDocument.Selection as EnvDTE.TextSelection);
selection.Text = "";
//Here myText ends up having some content written into it
selection.Text = myText; //VS hangs after this point
Любые подсказки относительно того, что я могу сделать, чтобы исправить (или, по крайней мере отладки) это? Я пробовал профайлер VS, но все, что я получаю, это то, что 98% времени тратится впустую на «msenv.dll», и я не вижу, что происходит внутри.
* (берет SQL из буфера обмена и перерывов он в линии обернутые в AppendLine вызывает к StringBuilder)
, какая строка на нем висит, когда вы проходите через код, эта строка 'GetService' вы читаете документацию https://msdn.microsoft.com/en-us/library/envdte.textselection.aspx – MethodMan
Нет .. Это последняя строка кода, как в моем примере. Спасибо. –
Я не вижу строкового кода строчки .. почему вы не показываете весь соответствующий код ..? – MethodMan