Files
Shrlalgo.RvKits/ShrlAlgoToolkit.RevitAddins/RvMEP/RoomCheckItem.cs

33 lines
1.0 KiB
C#
Raw Normal View History

2024-09-22 11:05:41 +08:00
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Architecture;
using CommunityToolkit.Mvvm.ComponentModel;
2025-12-28 11:47:54 +08:00
using ShrlAlgoToolkit.Core.Assists;
2024-09-22 11:05:41 +08:00
2025-04-24 20:56:44 +08:00
namespace ShrlAlgoToolkit.RevitAddins.RvMEP
2024-09-22 11:05:41 +08:00
{
public partial class RoomCheckItem : ObservableObject
{
[ObservableProperty]
public partial bool IsSelected { get; set; }
2024-09-22 11:05:41 +08:00
[ObservableProperty]
public partial string Name { get; set; }
2024-09-22 11:05:41 +08:00
[ObservableProperty]
public partial Room Room { get; set; }
2026-01-01 10:02:59 +08:00
// 当 Room 属性被赋值时,这个方法会被自动调用
partial void OnRoomChanged(Room value)
{
// 只有当 Room 不为空时才计算默认颜色
if (value != null)
{
// 这里实现了“初始值”逻辑:每当 Room 变了Color 就重置为 Room 对应的颜色
Color = ColorAssist.GetDistinctColorById(value.Id);
}
}
2024-09-22 11:05:41 +08:00
[ObservableProperty]
2026-01-01 10:02:59 +08:00
public partial Color Color { get; set; }
2024-09-22 11:05:41 +08:00
}
}