IValueConverter.Convert

Синтаксис Fore

Convert(Value: Variant): Variant;

Синтаксис Fore.NET

Convert(Value: object): object;

Параметры

Value. Преобразуемое значение.

Описание

Метод Convert преобразует указанное значение.

Комментарии

Тип значения, полученного в результате преобразования необходимо определить в свойстве IValueConverter.DataType.

Пример Fore

Приведен пример пользовательского класса, выполняющего округление вещественных значений.

Добавьте ссылки на системные сборки: Cubes, Dal, MathFin.

// Класс, выполняющий преобразование значений
Class Converter: Object, IValueConverter
    
    // Функция преобразования значений
    Public Function Convert(Value: Variant): Variant;
    Begin
        // Выполняем округление значения
        Return Math.Round(Value As Double,2);
    End Function Convert;
    
    // Возвращаем тип преобразованных значений
    Public Function get_DataType: DbDataType;
    Begin
        Return dbDataType.Float;
    End Function get_DataType;
    
    // Функция для проверки возможности преобразования значения
    Public Function TryConvert(Value: Variant; Var Result: Variant): Boolean;
    Begin
        Try
            // Если преобразование возможно, то функция вернёт значение True
            Result := Convert(Value);
            Return True;
        Except
        End Try;
        // Если преобразование невозможно, то функция вернёт значение False
        Return False;
    End Function TryConvert;

End Class Converter;

Пример Fore.NET

Необходимые требования и результат выполнения примера Fore.NET совпадают с примером Fore.

Imports Prognoz.Platform.Interop.Cubes;
Imports Prognoz.Platform.Interop.Dal;
Imports Prognoz.Platform.Interop.MathFin;

// Класс, выполняющий преобразование значений
Public Class Converter: Object, IValueConverter
    
    // Функция преобразования значений
    Public Function Convert(Value: object): object;
    Var
        Maht: MathClass;
    Begin
        // Выполняем округление значения
        Maht := New MathClass.Create();
        Return Maht.Round(Value As Double, 2);
    End Function Convert;
    
    // Возвращаем тип преобразованных значений
    Public Property DataType: DbDataType
    Get
    Begin
        Return dbDataType.ddtFloat;
    End Get
    End Property DataType;
    
    // Функция для проверки возможности преобразования значения
    Public Function TryConvert(Value: object; Var Result: object): Boolean;
    Begin
        Try
            // Если преобразование возможно, то функция вернёт значение True
            Result := Convert(Value);
            Return True;
        Except
        End Try;
        // Если преобразование невозможно, то функция вернёт значение False
        Return False;
    End Function TryConvert;

End Class Converter;

См. также:

IValueConverter