Files
SzmediTools/Szmedi.RvKits/Display/CategoryDisplayCmd.cs

43 lines
1.1 KiB
C#
Raw Normal View History

2025-09-16 16:06:41 +08:00

using Autodesk.Revit.Attributes;
using Autodesk.Revit.DB;
using Nice3point.Revit.Toolkit.External;
using System.Windows;
using System.Windows.Interop;
using Szmedi.RvKits.Assists;
namespace Szmedi.RvKits.DisplayTools
{
/// <summary>
/// Revit执行命令
/// </summary>
[Transaction(TransactionMode.Manual)]
public class CategoryDisplayCmd : ExternalCommand
{
public override void Execute()
{
if (Document.ActiveView.ViewTemplateId != ElementId.InvalidElementId)
{
MessageBox.Show("当前视图已应用视图样板,无法修改可见性", "提示", MessageBoxButton.OK, MessageBoxImage.Exclamation);
return;
}
if (WinIntPtr.IsVisible("类别显示"))
{
WinIntPtr.ShowAndActive("类别显示");
}
else
{
CategoryDisplayWin visibilityWin = new(UiApplication);
new WindowInteropHelper(visibilityWin).Owner = System.Diagnostics.Process.GetCurrentProcess().MainWindowHandle;
visibilityWin.Show();
}
}
}
}