Закрыть все неактивные вкладки

Mandyson

Client
Регистрация
03.06.2012
Сообщения
410
Благодарностей
84
Баллы
28
Ищу сниппет для сабжа.
 

Mandyson

Client
Регистрация
03.06.2012
Сообщения
410
Благодарностей
84
Баллы
28
Пока вывел такое решение, вроде бы корректно работает, но думаю не идеально.
Код:
Tab[] tabs = instance.AllTabs;

for(int x = 0; x < tabs.Count()-1; x++){
    tabs[x].Close();
}
Как я понял метода для проверки активна ли вкладка в данный момент не существует, что странно конечно, т.к. он явно иногда необходим.
 
  • Спасибо
Реакции: Dimionix

Dimionix

Moderator
Регистрация
09.04.2011
Сообщения
3 068
Благодарностей
3 122
Баллы
113
Последнее редактирование:

heks

Client
Регистрация
01.10.2013
Сообщения
1 204
Благодарностей
316
Баллы
83
Пока вывел такое решение, вроде бы корректно работает, но думаю не идеально.
Код:
Tab[] tabs = instance.AllTabs;

for(int x = 0; x < tabs.Count()-1; x++){
    tabs[x].Close();
}
Как я понял метода для проверки активна ли вкладка в данный момент не существует, что странно конечно, т.к. он явно иногда необходим.
в проект мейкере работает код в зенно посте почему то не всегда
 
Последнее редактирование:

Phoenix78

Client
Read only
Регистрация
06.11.2018
Сообщения
11 790
Благодарностей
5 720
Баллы
113
вот код который закрывает все вкладки кроме указанных в условии в первом цикле. и активирует ту вкладку которая указана во втором цикле

C#:
// закрываем все лишние вкладки
Tab tab = instance.ActiveTab;
var tab1 = instance.AllTabs;

try {
    int ddd=tab1.Count();

    for (int i = (ddd-1); i >= 0; i--)
    {
        try{
            if (instance.AllTabs[i].Name == "popup" || instance.AllTabs[i].Name == "page"){    }  
            else{
                try {
                    tab = instance.AllTabs[i];
                    tab.Close();
                }catch{}           
            }
        }catch{}
    }
}catch{}
//находим нужную вкладку и активируем
tab1 = instance.AllTabs;
try{
    int ddd=tab1.Count();
    for (int i = (ddd-1); i >= 0; i--)
    {
        try {
            if (instance.AllTabs[i].Name == "popup" )    {
                instance.AllTabs[i].SetActive();
                break;
            }
            else{    }
        }    catch{}
    }
}catch{}
 
  • Спасибо
Реакции: intagens и heks

heks

Client
Регистрация
01.10.2013
Сообщения
1 204
Благодарностей
316
Баллы
83
спасибо
 

Кто просматривает тему: (Всего: 1, Пользователи: 0, Гости: 1)