Делегат скрытия строк в GroupEdit
Для наложения простых ограничений на записи, отображаемые в GroupEdit, можно воспользоваться делегатом скрытия строк соответствующего контрола. Данный делегат определяет видимость каждой записи в GroupEdit.
public IsObjectVisibleDelegate IsObjectVisible;
public delegate bool IsObjectVisibleDelegate(DataObject dataObject);
Пример использования делегата скрытия строк
Пусть на форме имеется GroupEdit geВизитКлиентаВБанк
, содержащий записи типа ВизитКлиентаВБанк
, и в geВизитКлиентаВБанк
необходимо отобразить только те записи, что содержат пустое значение в поле ЦельВизита
.
Для решения данной задачи необходимо следующее:
1) Определить требуемый делегат (он возвращает true
, если поле ЦельВизита
у поданной на вход записи типа ВизитКлиентаВБанк
не заполнено):
private bool IsObjectVisibleMyImplement(DataObject dataObject)
{
return string.IsNullOrEmpty(((ВизитКлиентаВБанк)dataObject).ЦельВизита);
}
2) Назначить делегат geВизитКлиентаВБанк
:
public class WinformБанкE : ICSSoft.STORMNET.UI.BaseWinEdit, IIS.LookUpEditManager2.DPDIБанкE
{
//...
public WinformБанкE()
{
//...
this.geВизитКлиентаВБанк.IsObjectVisible = IsObjectVisibleMyImplement;
//...
}
}