Сообщество программистов Autodesk в СНГ

ADN Club => AutoCAD .NET API => Тема начата: Александр Пекшев aka Modis от 30-10-2016, 17:05:44

Название: Сортировка списка листов как в документе
Отправлено: Александр Пекшев aka Modis от 30-10-2016, 17:05:44
Всем привет.
Получаю список листов в документе "обычным" способом:
Код - C# [Выбрать]
  1. _currentDocLayouts = new List<Layout>();
  2.  
  3. using (Transaction tr = _currentDatabase.TransactionManager.StartTransaction())
  4. {
  5.     DBDictionary layoutDic = tr.GetObject(
  6.         _currentDatabase.LayoutDictionaryId,
  7.         OpenMode.ForRead,
  8.         false
  9.         ) as DBDictionary;
  10.  
  11.     foreach (DBDictionaryEntry entry in layoutDic)
  12.     {
  13.         ObjectId layoutId = entry.Value;
  14.  
  15.         Layout layout = tr.GetObject(layoutId, OpenMode.ForRead) as Layout;
  16.         if (layout != null && !layout.ModelType)
  17.             if (!_currentDocLayouts.Contains(layout))
  18.                 _currentDocLayouts.Add(layout);
  19.  
  20.     }
  21.     tr.Commit();
  22. }
  23.  
и вот незадача - список получается отсортированный по алфавиту  :(
В теме (http://adndevblog.typepad.com/autocad/2012/05/listing-the-layout-names.html), откуда был взят код, в комментариях спрашивали такой вопрос и ответ прозвучал так:
The layout's tab order property should let you know that info.

В общем вопрос открытый - как получить список листов документа в том порядке, в котором эти листы находятся в документе?
Название: Re: Сортировка списка листов как в документе
Отправлено: avc от 30-10-2016, 17:12:38
А в чем собственно проблема? Пересортировать список по TabOrder.
Название: Re: Сортировка списка листов как в документе
Отправлено: Александр Пекшев aka Modis от 30-10-2016, 17:15:16
А в чем собственно проблема? Пересортировать список по TabOrder.
Если честно, я не знаю где искать этот самый TabOrder  :-[
Название: Re: Сортировка списка листов как в документе
Отправлено: Александр Ривилис от 30-10-2016, 17:43:51
А в чем собственно проблема? Пересортировать список по TabOrder.
Если честно, я не знаю где искать этот самый TabOrder  :-[

Свойство Layout.TabOrder
Название: Re: Сортировка списка листов как в документе
Отправлено: Александр Пекшев aka Modis от 30-10-2016, 17:47:01
Свойство Layout.TabOrder
Спасибо! А слона-то я и не приметил)) Все сразу стало на свои места