using Autodesk.Revit.DB; using Autodesk.Revit.UI; using CommunityToolkit.Mvvm.ComponentModel; using CommunityToolkit.Mvvm.Input; namespace ShrlAlgo.RvKits.Windows { public partial class NavigateViewViewModel : ObservableObject { public NavigateViewViewModel(UIApplication uiapp, params Type[] viewTypes) { var doc = uiapp.ActiveUIDocument.Document; Views = doc.OfClasses(viewTypes).Cast().Where(v => !v.IsTemplate).ToList(); this.uiapp = uiapp; } private readonly UIApplication uiapp; [ObservableProperty] private IList views; [RelayCommand] private void NavigateView(object obj) { if (obj is View view) { var uidoc = uiapp.ActiveUIDocument; uidoc.ActiveView = view; } } } }