添加项目文件。

This commit is contained in:
GG Z
2026-02-23 16:57:09 +08:00
parent 63b7094528
commit ebf06999d0
109 changed files with 7194 additions and 0 deletions

View File

@@ -0,0 +1,69 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Autodesk.Windows;
using DotNet.RevitUI;
using Autodesk.Revit.Attributes;
namespace Test.DotNet.RevitUI.Command
{
/// <summary>
/// 删除元素
/// </summary>
/// <remarks>测试基于ribbon自动化绑定命令下的事务开启测试</remarks>
/// <remarks>如果基于addinmanager工具测试此命令则需要声明特性否则不需要声明此特性</remarks>
[Transaction(TransactionMode.Manual)]
public class DeleteElementCommand : RevitCommand
{
protected override bool CanExecute(Autodesk.Windows.RibbonItem parameter)
{
if (parameter == null)
{
return true;
}
if (parameter.Tag is UIApplication uiApp)
{
return uiApp.ActiveUIDocument != null;
}
return true;
}
protected override Result Invoke(ExternalCommandData commandData, ref string message, ElementSet elements)
{
var uidoc = commandData.Application.ActiveUIDocument;
var doc = uidoc.Document;
while (true)
{
try
{
var reference = uidoc.Selection.PickObject(Autodesk.Revit.UI.Selection.ObjectType.Element, "请选择要删除的元素 :");
doc.Invoke(m =>
{
try
{
doc.Delete(reference.ElementId);
}
catch (Exception ex)
{
Autodesk.Revit.UI.TaskDialog.Show("错误", ex.Message);
}
});
}
catch (Exception ex)
{
return Result.Cancelled;
}
}
}
}
}

View File

@@ -0,0 +1,54 @@
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Autodesk.Windows;
using DotNet.RevitUI;
using DotNet.RevitUI.Helper;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Test.DotNet.RevitUI.View;
using DotNet.RevitUI.MVVM.Extension;
namespace Test.DotNet.RevitUI.Command
{
/// <summary>
/// 分段墙体
/// </summary>
/// <remarks>1 . 测试基于WPF MVVM 的事务开启</remarks>
/// <remarks>2 . 测试模态窗体立即调用命令</remarks>
public class DeleteMatchElementCommand : RevitCommand
{
protected override bool CanExecute(Autodesk.Windows.RibbonItem parameter)
{
if (parameter == null)
{
return true;
}
if (parameter.Tag is UIApplication uiApp)
{
return uiApp.ActiveUIDocument != null;
}
return true;
}
protected override Result Invoke(ExternalCommandData commandData, ref string message, ElementSet elements)
{
var rect = MainHelper.RevitMDIRect;
var main = new MainDeleteMatchElement()
{
Top = rect.Top + 5,
Left = rect.Left
};
main.ShowDialog(MainHelper.RevitHandle);
return Result.Succeeded;
}
}
}

View File

@@ -0,0 +1,28 @@
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Autodesk.Windows;
using DotNet.RevitUI;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test.DotNet.RevitUI.Command
{
public class FlowButton1Command : RevitCommand
{
protected override bool CanExecute(Autodesk.Windows.RibbonItem parameter)
{
return true;
}
protected override Result Invoke(ExternalCommandData commandData, ref string message, ElementSet elements)
{
Autodesk.Revit.UI.TaskDialog.Show("提示", "测试 Flow Button1 Command 有效点击 ");
return Result.Succeeded;
}
}
}

View File

@@ -0,0 +1,26 @@
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using DotNet.RevitUI;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test.DotNet.RevitUI.Command
{
public class FlowButton2Command : RevitCommand
{
protected override bool CanExecute(Autodesk.Windows.RibbonItem parameter)
{
return true;
}
protected override Result Invoke(ExternalCommandData commandData, ref string message, ElementSet elements)
{
Autodesk.Revit.UI.TaskDialog.Show("提示", "测试 Flow Button2 Command 有效点击 ");
return Result.Succeeded;
}
}
}

View File

@@ -0,0 +1,27 @@
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using Autodesk.Windows;
using DotNet.RevitUI;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test.DotNet.RevitUI.Command
{
public class SplitButton1Command : RevitCommand
{
protected override bool CanExecute(Autodesk.Windows.RibbonItem parameter)
{
return true;
}
protected override Result Invoke(ExternalCommandData commandData, ref string message, ElementSet elements)
{
Autodesk.Revit.UI.TaskDialog.Show("提示", "测试 Split Button1 Command 有效点击 ");
return Result.Succeeded;
}
}
}

View File

@@ -0,0 +1,27 @@
using Autodesk.Revit.DB;
using Autodesk.Revit.UI;
using DotNet.RevitUI;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Test.DotNet.RevitUI.Command
{
public class SplitButton2Command : RevitCommand
{
protected override bool CanExecute(Autodesk.Windows.RibbonItem parameter)
{
return true;
}
protected override Result Invoke(ExternalCommandData commandData, ref string message, ElementSet elements)
{
Autodesk.Revit.UI.TaskDialog.Show("提示", "测试 Split Button2 Command 有效点击 ");
return Result.Succeeded;
}
}
}