Visual studio 2010: ограничение количества вкладок редактора

#visual-studio #visual-studio-2010 #resharper

#visual-studio #visual-studio-2010 #resharper

Вопрос:

Visual Studio, похоже, не ограничивает количество открытых вкладок редактора. Я использую ReSharper, и при определенном количестве открытых вкладок редактора все становится очень медленным. Поэтому я должен отслеживать открытые вкладки и периодически закрывать старые. Было бы здорово, если бы я мог установить ограничение, чтобы оно закрывало старые вкладки при достижении предела.

Есть ли настройка в VS / ReSharper или какие-либо дополнения VS, которые могут помочь достичь этого?

Комментарии:

1. Вероятно, не слишком полезно, но я нахожу resharper невыносимым (даже на моем quad xeon с 12 ГБ оперативной памяти) из-за подобных вещей, поэтому я удалил его и вместо этого использую инструменты повышения производительности: visualstudiogallery.msdn.microsoft.com /…

Ответ №1:

В данный момент я пытаюсь решить эту проблему с помощью примитивного дополнения. Кажется, работает нормально. Все еще тестирую его.

     public void OnConnection(object application, ext_ConnectMode connectMode, object addInInst, ref Array custom)
    {

        _applicationObject = (DTE2)application;

        _applicationObject.Events.WindowEvents.WindowCreated  = 
        window =>
        {
            if (window.Document != null)
            {
                documentWindows.AddFirst(window);
                if(documentWindows.Count > 7)
                {
                    Window lastWindow = documentWindows.Last.Value;
                    documentWindows.Remove(lastWindow);
                    lastWindow.Close(vsSaveChanges.vsSaveChangesYes);
                }
            }
        };

        _applicationObject.Events.WindowEvents.WindowClosing  =
            window =>
                {
                if(window.Document != null)
                {
                    documentWindows.Remove(window);
                }
                };
    }
  

Комментарии:

1. Очень интересно. Жаль, что это не завершено, как вы получаете «documentWindows», пожалуйста? Как пользователь IntelliJ и новичок в Visual Studio, я действительно скучаю по этой функциональности (среди прочего :))… Заранее спасибо.

2. documentWindows — это всего лишь список окон, которые я поддерживаю, все это есть в приведенном выше коде, кроме определения поля. Весь мой код для добавления, за исключением определения списка Windows, приведен выше. Все остальное — это стандартный шаблонный код, сгенерированный при создании проекта VS adding в VS.

3. marketplace.visualstudio.com/…