Открыть или закрыть рабочий набор в открытом документе

Автор Тема: Открыть или закрыть рабочий набор в открытом документе  (Прочитано 3757 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Павел Тер-МикаэлянАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 124
  • Карма: 5
Добрый день.
Подскажите пожалуйста, есть некий активный документ (он открыт с закрытием всех рабочих наборов). Теперь я хочу в этом открытом документе открыть все рабочие наборы.
Но свойство workset.IsOpen доступно только для чтения.

Пробовал данный сценарий, но он не работает для уже открытых документов:
Код - C# [Выбрать]
  1.  UIApplication uIApplication = commandData.Application;
  2.  Document doc = uIApplication.ActiveUIDocument.Document;
  3.  ModelPath modelPath = ModelPathUtils.ConvertUserVisiblePathToModelPath(doc.PathName);
  4.  List<WorksetId> worksetIds = WorksharingUtils.GetUserWorksetInfo(modelPath)
  5.                                                          .Select(q => q.Id)
  6.                                                          .ToList();  
  7.  OpenOptions openOptions = new OpenOptions();
  8.  WorksetConfigurationOption worksetConfigurationOption = WorksetConfigurationOption.OpenAllWorksets;
  9.  WorksetConfiguration worksetConfiguration = new WorksetConfiguration(worksetConfigurationOption);
  10.  worksetConfiguration.Open(worksetIds);
  11.  openOptions.SetOpenWorksetsConfiguration(worksetConfiguration);
  12.  uIApplication.Application.OpenDocumentFile(modelPath, openOptions);
  13.  

То есть, у меня уже открыт документ и я хочу в нем менять состояние открытости рабочих наборов.
« Последнее редактирование: 07-02-2024, 12:51:28 от Александр Ривилис »

Оффлайн Александр Игнатович

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
Посмотри WorksharingUtils.CheckoutWorksets и WorksharingUtils.RelinquishOwnership

Оффлайн Павел Тер-МикаэлянАвтор темы

  • ADN OPEN
  • ***
  • Сообщений: 124
  • Карма: 5
Нет, это не то. Похоже, единственный способ открыть рабочие наборы, это создать в них элементы и отобразить их через showElements, в этом случае рабочий набор автоматически должен открываться.