DepartmentProject/DepartmentPortal/Common/DesktopTools/Interfaces/IControl.cs

51 lines
1.1 KiB
C#

using DesktopTools.Models;
using ModuleTools.Enums;
using System;
namespace DesktopTools.Interfaces
{
/// <summary>
/// Основные параметры для контрола
/// </summary>
public interface IControl
{
/// <summary>
/// Идентификатор контрола
/// </summary>
public Guid ControlId { get; }
/// <summary>
/// Заголовок контрола
/// </summary>
string Title { get; }
/// <summary>
/// Операция в системе
/// </summary>
public AccessOperation AccessOperation { get; }
/// <summary>
/// Создание дубликата
/// </summary>
/// <returns></returns>
IControl GetInstance();
/// <summary>
/// Открытие контрола
/// </summary>
/// <param name="model"></param>
void Open(ControlOpenModel model);
/// <summary>
/// Сохранение настроек в xml-строку
/// </summary>
/// <returns></returns>
string SaveToXml();
/// <summary>
/// Загрузка настроек из xml-строки
/// </summary>
/// <param name="xml"></param>
void LoadFromXml(string xml);
}
}