28/02/2017
Мониторинг изменения рабочего пространства
Если вам нужно отслеживать переключения рабочего пространства (например, в случае если вы используете Ribbon Runtime API для добавления элементов управления в Ленту), то вам достаточно отслеживать изменение системной переменной WSCURRENT
Код - C#: [Выделить]
- using System;
- using Autodesk.AutoCAD.Runtime;
- using acApp = Autodesk.AutoCAD.ApplicationServices.Application;
- using Autodesk.AutoCAD.ApplicationServices;
- [assembly:CommandClass(typeof(TestProject.Commands))]
- namespace TestProject
- {
- public class Commands
- {
- [CommandMethod("MonitorWorkspaceChange")]
- public void MonitorWorkspaceChange()
- {
- acApp.SystemVariableChanged +=
- new SystemVariableChangedEventHandler(
- acApp_SystemVariableChanged);
- }
- void acApp_SystemVariableChanged(
- object sender, SystemVariableChangedEventArgs e)
- {
- if (e.Name == "WSCURRENT")
- {
- string currentWorkspaceName =
- (string)acApp.GetSystemVariable(e.Name);
- // Делайте то, что нужно
- }
- }
- }
- }
Источник: http://adndevblog.typepad.com/autocad/2012/05/monitor-workspace-change.html
Автор перевода: Александр Ривилис
Обсуждение: http://adn-cis.org/forum/index.php?topic=7660
Опубликовано 28.02.2017