54 lines
1.4 KiB
C#
54 lines
1.4 KiB
C#
using DesktopTools.Models;
|
||
using ModuleTools.ViewModels;
|
||
using System;
|
||
|
||
namespace DesktopTools.Interfaces
|
||
{
|
||
/// <summary>
|
||
/// Работа с generic-контролом списка
|
||
/// </summary>
|
||
public interface IGenericControlEntityList<L, E>
|
||
where L : ListViewModel<E>
|
||
where E : ElementViewModel
|
||
{
|
||
/// <summary>
|
||
/// Новый экземпляр контрола
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
IControl GetInstanceGenericControl();
|
||
|
||
/// <summary>
|
||
/// Получение настроек
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
ControlViewEntityListConfiguration GetConfigControl();
|
||
|
||
/// <summary>
|
||
/// Получение полного списка
|
||
/// </summary>
|
||
/// <returns></returns>
|
||
L GetDataForControl();
|
||
|
||
/// <summary>
|
||
/// Получение списка с пагинацией по названиям
|
||
/// </summary>
|
||
/// <param name="key"></param>
|
||
/// <returns></returns>
|
||
L GetDataWithPageNameForControl(string key);
|
||
|
||
/// <summary>
|
||
/// Получение списка с пагинацией по страницам
|
||
/// </summary>
|
||
/// <param name="page"></param>
|
||
/// <param name="count"></param>
|
||
/// <returns></returns>
|
||
L GetDataWithPageNumberForControl(int page, int count);
|
||
|
||
/// <summary>
|
||
/// Получение списка от родителя
|
||
/// </summary>
|
||
/// <param name="id"></param>
|
||
/// <returns></returns>
|
||
L GetDataFromParentForControl(Guid id);
|
||
}
|
||
} |