Imports System
Imports System.ComponentModel

Imports DevExpress.Xpo
Imports DevExpress.Data.Filtering

Imports DevExpress.ExpressApp
Imports DevExpress.Persistent.Base
Imports DevExpress.Persistent.BaseImpl
Imports DevExpress.Persistent.Validation

<DefaultClassOptions(), CreatableItem(False), NavigationItem(False), DeferredDeletion(False)> _
Public Class ModelListViewColumn
    Inherits BaseObject
    Private _ModelListView As ModelListView
    Private _HideValueIfZero As Boolean
    Private _InLineCriteria As String
    Private _InLineEdit As Boolean
    Private _PropertyEditorType As String
    Private _AllowEdit As Boolean
    Private _AllowSort As Boolean
    Private _GroupInterval As DevExpress.ExpressApp.Model.GroupInterval
    Private _ImmediatePostData As Boolean
    Private _IsPassword As Boolean
    Private _LookupEditorMode As DevExpress.Persistent.Base.LookupEditorMode
    Private _SortOrder As DevExpress.Data.ColumnSortOrder
    Private _DataSourceCriteria As String
    Private _DataSourceProperty As String
    Private _DataSourcePropertyIsNullCriteria As String
    Private _LookupProperty As String
    Private _ModelMember As String
    Private _PropertyName As String
    Private _DisplayFormat As String
    Private _EditMask As String
    Private _GroupIndex As Long
    Private _MaxLength As Long
    Private _SortIndex As Long
    Private _Width As Long
    Private _Caption As String
    Private _GroupFooterSummaryType As DevExpress.Data.SummaryItemType
    Private _Id As String
    Private _Index As Long

    Public Sub New(ByVal session As Session)
        MyBase.New(session)
        ' This constructor is used when an object is loaded from a persistent storage.
        ' Do not place any code here or place it only when the IsLoading property is false:
        ' if (!IsLoading){
        '   It is now OK to place your initialization code here.
        ' }
        ' or as an alternative, move your initialization code into the AfterConstruction method.
    End Sub
    Public Overrides Sub AfterConstruction()
        MyBase.AfterConstruction()
        ' Place here your initialization code.
    End Sub

    Property ModelListView As ModelListView
        Get
            Return _ModelListView
        End Get
        Set(value As ModelListView)
            SetPropertyValue("ModelListView", _ModelListView, value)
        End Set
    End Property
    Property HideValueIfZero As Boolean
        Get
            Return _HideValueIfZero
        End Get
        Set(value As Boolean)
            SetPropertyValue("HideValueIfZero", _HideValueIfZero, value)
        End Set
    End Property
    <Size(-1)> _
    Property InLineCriteria As String
        Get
            Return _InLineCriteria
        End Get
        Set(value As String)
            SetPropertyValue("InLineCriteria", _InLineCriteria, value)
        End Set
    End Property
    Property InLineEdit As Boolean
        Get
            Return _InLineEdit
        End Get
        Set(value As Boolean)
            SetPropertyValue("InLineEdit", _InLineEdit, value)
        End Set
    End Property
    <Size(255)> _
    Property PropertyEditorType As String
        Get
            Return _PropertyEditorType
        End Get
        Set(value As String)
            SetPropertyValue("PropertyEditorType", _PropertyEditorType, value)
        End Set
    End Property
    Property AllowEdit As Boolean
        Get
            Return _AllowEdit
        End Get
        Set(value As Boolean)
            SetPropertyValue("AllowEdit", _AllowEdit, value)
        End Set
    End Property
    Property AllowSort As Boolean
        Get
            Return _AllowSort
        End Get
        Set(value As Boolean)
            SetPropertyValue("AllowSort", _AllowSort, value)
        End Set
    End Property
    Property GroupInterval As DevExpress.ExpressApp.Model.GroupInterval
        Get
            Return _GroupInterval
        End Get
        Set(value As DevExpress.ExpressApp.Model.GroupInterval)
            SetPropertyValue("GroupInterval", _GroupInterval, value)
        End Set
    End Property
    Property ImmediatePostData As Boolean
        Get
            Return _ImmediatePostData
        End Get
        Set(value As Boolean)
            SetPropertyValue("ImmediatePostData", _ImmediatePostData, value)
        End Set
    End Property
    Property IsPassword As Boolean
        Get
            Return _IsPassword
        End Get
        Set(value As Boolean)
            SetPropertyValue("IsPassword", _IsPassword, value)
        End Set
    End Property
    Property LookupEditorMode As DevExpress.Persistent.Base.LookupEditorMode
        Get
            Return _LookupEditorMode
        End Get
        Set(value As DevExpress.Persistent.Base.LookupEditorMode)
            SetPropertyValue("LookupEditorMode", _LookupEditorMode, value)
        End Set
    End Property
    Property SortOrder As DevExpress.Data.ColumnSortOrder
        Get
            Return _SortOrder
        End Get
        Set(value As DevExpress.Data.ColumnSortOrder)
            SetPropertyValue("SortOrder", _SortOrder, value)
        End Set
    End Property
    <Size(-1)> _
    Property DataSourceCriteria As String
        Get
            Return _DataSourceCriteria
        End Get
        Set(value As String)
            SetPropertyValue("DataSourceCriteria", _DataSourceCriteria, value)
        End Set
    End Property
    <Size(-1)> _
    Property DataSourceProperty As String
        Get
            Return _DataSourceProperty
        End Get
        Set(value As String)
            SetPropertyValue("DataSourceProperty", _DataSourceProperty, value)
        End Set
    End Property
    <Size(-1)> _
    Property DataSourcePropertyIsNullCriteria As String
        Get
            Return _DataSourcePropertyIsNullCriteria
        End Get
        Set(value As String)
            SetPropertyValue("DataSourcePropertyIsNullCriteria", _DataSourcePropertyIsNullCriteria, value)
        End Set
    End Property
    <Size(255)> _
    Property LookupProperty As String
        Get
            Return _LookupProperty
        End Get
        Set(value As String)
            SetPropertyValue("LookupProperty", _LookupProperty, value)
        End Set
    End Property
    <Size(-1)> _
    Property ModelMember As String
        Get
            Return _ModelMember
        End Get
        Set(value As String)
            SetPropertyValue("ModelMember", _ModelMember, value)
        End Set
    End Property
    <Size(255)> _
    Property PropertyName As String
        Get
            Return _PropertyName
        End Get
        Set(value As String)
            SetPropertyValue("PropertyName", _PropertyName, value)
        End Set
    End Property
    Property DisplayFormat As String
        Get
            Return _DisplayFormat
        End Get
        Set(value As String)
            SetPropertyValue("DisplayFormat", _DisplayFormat, value)
        End Set
    End Property
    Property EditMask As String
        Get
            Return _EditMask
        End Get
        Set(value As String)
            SetPropertyValue("EditMask", _EditMask, value)
        End Set
    End Property
    Property GroupIndex As Long
        Get
            Return _GroupIndex
        End Get
        Set(value As Long)
            SetPropertyValue("GroupIndex", _GroupIndex, value)
        End Set
    End Property
    Property MaxLength As Long
        Get
            Return _MaxLength
        End Get
        Set(value As Long)
            SetPropertyValue("MaxLength", _MaxLength, value)
        End Set
    End Property
    Property SortIndex As Long
        Get
            Return _SortIndex
        End Get
        Set(value As Long)
            SetPropertyValue("SortIndex", _SortIndex, value)
        End Set
    End Property
    Property Width As Long
        Get
            Return _Width
        End Get
        Set(value As Long)
            SetPropertyValue("Width", _Width, value)
        End Set
    End Property
    <Size(255)> _
    Property Caption As String
        Get
            Return _Caption
        End Get
        Set(value As String)
            SetPropertyValue("Caption", _Caption, value)
        End Set
    End Property
    Property GroupFooterSummaryType As DevExpress.Data.SummaryItemType
        Get
            Return _GroupFooterSummaryType
        End Get
        Set(value As DevExpress.Data.SummaryItemType)
            SetPropertyValue("GroupFooterSummaryType", _GroupFooterSummaryType, value)
        End Set
    End Property
    <Size(255)> _
    Property Id As String
        Get
            Return _Id
        End Get
        Set(value As String)
            SetPropertyValue("Id", _Id, value)
        End Set
    End Property
    Property Index As Long
        Get
            Return _Index
        End Get
        Set(value As Long)
            SetPropertyValue("Index", _Index, value)
        End Set
    End Property
End Class
