Files
DP44/Common/DTS.Common/RegionManager/IDTSRegionManager.cs
2026-04-17 14:55:32 -04:00

69 lines
3.0 KiB
C#

using System;
using System.Threading.Tasks;
using DTS.Common.Base;
using Prism.Regions;
// ReSharper disable InconsistentNaming
// ReSharper disable CheckNamespace
namespace DTS.Common
{
public interface IDTSRegionManager : IRegionManager
{
/// <summary>
/// Adds View to the Main Region.
/// </summary>
/// <param name="viewDefinition">The View definition.</param>
/// <param name="parameter">The parameter which uses to initialize the View.</param>
void AddView(ViewDefinition viewDefinition, object parameter);
/// <summary>
/// Adds View to the Main Region.
/// </summary>
/// <param name="viewDefinition">The View definition.</param>
/// <param name="parameter">The parameter which uses to initialize the View.</param>
/// <param name="allowMultipleInstances">A value indicating whether to allow to create the multiple views.</param>
void AddView(ViewDefinition viewDefinition, object parameter, bool allowMultipleInstances);
/// <summary>
/// Adds View to the Main Region asynchronously.
/// </summary>
/// <param name="viewDefinition">The View definition.</param>
/// <param name="parameter">The parameter which uses to initialize the service.</param>
Task AddViewAsync(ViewDefinition viewDefinition, object parameter);
/// <summary>
/// Adds View to the Main Region asynchronously.
/// </summary>
/// <param name="viewDefinition">The View definition.</param>
/// <param name="parameter">The parameter which uses to initialize the View.</param>
/// <param name="allowMultipleInstances">A value indicating whether to allow to create the multiple views.</param>
Task AddViewAsync(ViewDefinition viewDefinition, object parameter, bool allowMultipleInstances);
/// <summary>
/// Removes View from the Main Region.
/// </summary>
/// <param name="viewModel">The View-model.</param>
void RemoveView(IBaseViewModel viewModel);
/// <summary>
/// Removes View from the specified region by name
/// </summary>
/// <param name="regionName"></param>
void RemoveViewByRegionName(string regionName);
/// <summary>
/// Reloads data for the specified View.
/// </summary>
/// <param name="interfaceForView">Type of the View's interface.</param>
/// <param name="parameter">The parameter which uses to initialize the View.</param>
void RefreshView(Type interfaceForView, object parameter);
/// <summary>
/// Reloads data for the specified View asynchronously.
/// </summary>
/// <param name="interfaceForView">Type of the View's interface.</param>
/// <param name="parameter">The parameter which uses to initialize the View.</param>
Task RefreshViewAsync(Type interfaceForView, object parameter);
}
}