Search Results for

    Show / Hide Table of Contents

    Class BaseGridAnyRelatedCollectionController<T>

    The base generic grid controller which works with the IBaseGridAnyRelatedCollection<T> view and displays an entity type as rows in the grid that are all related to an other object

    This is the main base controller for creating grids, and dynamically creating their columns, for any entity in the system that is related to another object. It is different from BaseGridRelatedAnyCollectionController<SI, T> or BaseGridRelatedCollectionController<SI, T> as that single item type must be the same, where as this can have a parent that can be of different types allowing it to work against any entity parent

    Both this controller and the BaseDefaultSingleViewController<T> view have a similar mechanism for creating controls dynamically within the UI
    Inheritance
    System.Object
    ModelViewController
    BaseGridController
    BaseGridControllerAny<T>
    BaseGridController<T>
    BaseGridAnyRelatedCollectionController<T>
    Implements
    IBaseGridController
    IModelViewController
    ICollectionExportable
    INewGridItemImplementor<T>
    ICopyGridItemImplementor<T>
    IGrid
    IDeleteGridItemImplementor<T>
    Inherited Members
    BaseGridController<T>.GetGridSourceItems()
    BaseGridController<T>.GetInternalDescriptor()
    BaseGridController<T>.GetCurrentQuery()
    BaseGridController<T>.GetQueryForExcelResults()
    BaseGridController<T>.GetCreationQuery()
    BaseGridController<T>.NewItemHelper
    BaseGridController<T>.CopyItemHelper
    BaseGridController<T>.AllowOpenCommand
    BaseGridController<T>.AllowNewCommand
    BaseGridController<T>.AllowCopyCommand
    BaseGridController<T>.AllowDeleteCommand
    BaseGridController<T>.GetOpenGridCommand()
    BaseGridController<T>.GetCopyGridCommand()
    BaseGridController<T>.OnOpenRowItem(T)
    BaseGridController<T>.OpenInSameContext
    BaseGridControllerAny<T>.GetGridController(IBaseGrid<T>)
    BaseGridControllerAny<T>.CollectionType
    BaseGridControllerAny<T>.Descriptor
    BaseGridControllerAny<T>.CanEditRowItem(T)
    BaseGridControllerAny<T>.TrackItemChanges
    BaseGridControllerAny<T>.OnTrackedItemChanged(Object, String)
    BaseGridControllerAny<T>.RowPreviewColumns
    BaseGridControllerAny<T>.BulkUpdateMulltipleSelectedItemsOnEdit
    BaseGridControllerAny<T>.GridView
    BaseGridControllerAny<T>.GetGridSourceItems(IEnumerable<T>)
    BaseGridControllerAny<T>.AlterLoadedItems(IEnumerable<T>)
    BaseGridControllerAny<T>.Clear()
    BaseGridControllerAny<T>.CloseController()
    BaseGridControllerAny<T>.CurrentGridItems
    BaseGridControllerAny<T>.CurrentItems
    BaseGridControllerAny<T>.InitDisplay()
    BaseGridControllerAny<T>.ResetColumnsAndGroups(Boolean)
    BaseGridControllerAny<T>.DisplayUI()
    BaseGridControllerAny<T>.AutoSelectFirstRow
    BaseGridControllerAny<T>.LoadAdditionalColumns()
    BaseGridControllerAny<T>.Columns()
    BaseGridControllerAny<T>.AddCol(Int16, ControlDisplayInfoLight, EntityDescriptor)
    BaseGridControllerAny<T>.ColumnNames()
    BaseGridControllerAny<T>.PivotColumns(Int16)
    BaseGridControllerAny<T>.AddStandardColumns
    BaseGridControllerAny<T>.StandardColumnsUniqueGroupKey
    BaseGridControllerAny<T>.SelectedItemForSubViews
    BaseGridControllerAny<T>.ApplyGridSettingsToFilter(QueryableExecuter)
    BaseGridControllerAny<T>.ApplyPaging(QueryableExecuter)
    BaseGridControllerAny<T>.SetTotalCount(Int32)
    BaseGridControllerAny<T>.DefaultRowCount
    BaseGridControllerAny<T>.PagerRequired
    BaseGridControllerAny<T>.CurrentPageIndex
    BaseGridControllerAny<T>.TotalCount
    BaseGridControllerAny<T>.TotalPageCount
    BaseGridControllerAny<T>.Sortings
    BaseGridControllerAny<T>.Filters
    BaseGridControllerAny<T>.SetPageIndex(Int32)
    BaseGridControllerAny<T>.Redisplay()
    BaseGridControllerAny<T>.TrackResults(IEnumerable<T>)
    BaseGridControllerAny<T>.AlterColumnInfo(ControlDisplayInfo)
    BaseGridControllerAny<T>.UpdateColumnFromName(String)
    BaseGridControllerAny<T>.GetExportableColumnInfo(IEnumerable<ColumnDescriptor>)
    BaseGridControllerAny<T>.TogglerZeroColumn
    BaseGridControllerAny<T>.IsZeroColumnColumnVisible(String)
    BaseGridControllerAny<T>.ToggleZeroColumns()
    BaseGridControllerAny<T>.UpdateAllZeroColumns()
    BaseGridControllerAny<T>.UpdateTransferColumnStatus()
    BaseGridControllerAny<T>.TransferColToggler
    BaseGridControllerAny<T>.CanDelete(T)
    BaseGridControllerAny<T>.CanCreateNew
    BaseGridControllerAny<T>.GetStandardExtraColumns(String)
    BaseGridControllerAny<T>.IDeleteGridItemImplementor<T>.Grid
    BaseGridControllerAny<T>.InitCommands(IList<ViewCommand>)
    BaseGridControllerAny<T>.ExcelExportCommand
    BaseGridControllerAny<T>.GetPublicToggleCommand()
    BaseGridControllerAny<T>.GetNewGridCommand()
    BaseGridControllerAny<T>.GetDeleteCommand()
    BaseGridControllerAny<T>.GetUpCommand()
    BaseGridControllerAny<T>.GetDownCommand()
    BaseGridControllerAny<T>.AllowColumnSelection
    BaseGridControllerAny<T>.AllowPublicToggleCommand
    BaseGridControllerAny<T>.AllowSearchCommand
    BaseGridControllerAny<T>.AllowXMLImportExport
    BaseGridControllerAny<T>.AllowMultipleSelect
    BaseGridControllerAny<T>.AllowExcelExport
    BaseGridControllerAny<T>.AllowSequencing
    BaseGridControllerAny<T>.AutoOpenNewItemInTab
    BaseGridControllerAny<T>.OpenFromRelatedColumnName
    BaseGridControllerAny<T>.GetLookupIDsForNewItems(Func<IBaseEntity, Task>)
    BaseGridControllerAny<T>.PreventDuplicateLookupIDs
    BaseGridControllerAny<T>.RemoveItems(IEnumerable<T>)
    BaseGridControllerAny<T>.AddItem(T)
    BaseGridController.ComboItemsClear
    BaseGridController.ColumnGroups()
    BaseGridController.DefaultColumnGroupIndexes
    BaseGridController.DefaultFrozenColumnCount
    BaseGridController.AllPossibleSearchColumns()
    BaseGridController.InternalFilter
    BaseGridController.ColumnSortings
    BaseGridController.ColumnFilters
    BaseGridController.SearchColumns
    BaseGridController.Search
    BaseGridController.SetOrdering(IEnumerable<QueryableSort>)
    BaseGridController.SetFilters(IEnumerable<QueryableFilter>)
    BaseGridController.SetSearch(String, IEnumerable<String>)
    BaseGridController.DefaultSearchColumn
    BaseGridController.BaseGridView
    BaseGridController.GetVisibleColumnNames()
    BaseGridController.OnlyExportGrid
    BaseGridController.OnlyExportFromQuery
    BaseGridController.Created
    BaseGridController.IGrid.GridItems
    ModelViewController.CurrentDisplayedItem
    ModelViewController.CanWrite
    ModelViewController.CheckIsLockedForCanWrite
    ModelViewController.View
    ModelViewController.InitAsync()
    ModelViewController.DisplayItem(Object)
    ModelViewController.ShouldDisplayItem(Object)
    ModelViewController.DisplayIfNull
    ModelViewController.RemoveHandlers(Object)
    ModelViewController.AddHandlers(Object)
    ModelViewController.RemoveCommand(ViewCommand)
    ModelViewController.RemoveCommands<OFType>()
    ModelViewController.InsertCommand(ViewCommand, Int32)
    ModelViewController.InsertCommand(ViewCommand, ViewCommand, ViewCommand)
    ModelViewController.Commands
    ModelViewController.UpdateAllCommands()
    ModelViewController.ContextHelpURL
    System.Object.Equals(System.Object)
    System.Object.Equals(System.Object, System.Object)
    System.Object.GetHashCode()
    System.Object.GetType()
    System.Object.MemberwiseClone()
    System.Object.ReferenceEquals(System.Object, System.Object)
    System.Object.ToString()
    Namespace: LemonEdge.Client.Core.Views.Core
    Assembly: ClientCore.dll
    Syntax
    public abstract class BaseGridAnyRelatedCollectionController<T> : BaseGridController<T>, IBaseGridController, IModelViewController, ICollectionExportable, INewGridItemImplementor<T>, ICopyGridItemImplementor<T>, IGrid, IDeleteGridItemImplementor<T> where T : IBaseEntity
    Type Parameters
    Name Description
    T

    An entity type inheriting from IBaseEntity that are all related to the SingleItem

    Constructors

    BaseGridAnyRelatedCollectionController(IBaseGridAnyRelatedCollection<T>)

    Creates a new default grid view any related controller with the specified instance of a default grid any related view

    Declaration
    public BaseGridAnyRelatedCollectionController(IBaseGridAnyRelatedCollection<T> view)
    Parameters
    Type Name Description
    IBaseGridAnyRelatedCollection<T> view

    The instance of the default grid any related view in the client application

    Properties

    AllowIDFilter

    Indicates this grids results are not filtered by any DisplayableItemDescriptorForCollectionParams, as it is not a top level collection of items

    Declaration
    protected override bool AllowIDFilter { get; }
    Property Value
    Type Description
    System.Boolean
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridController<T>.AllowIDFilter

    CollectionRelationshipColumnName

    This is the property on the T entities that holds a relationship value that points to the SingleItem type

    This controller will automatically use that to filter the correct entities for the grid in AlterQuery(QueryableExecuter<T>)

    Declaration
    public abstract string CollectionRelationshipColumnName { get; }
    Property Value
    Type Description
    System.String

    CollectionRelationshipColumnNameLabel

    Holds the label column for the CollectionRelationshipColumnName

    Declaration
    public virtual string CollectionRelationshipColumnNameLabel { get; }
    Property Value
    Type Description
    System.String

    PopulateNewFromLookupColumnName

    Returns OpenFromRelatedColumnName

    Declaration
    public override string PopulateNewFromLookupColumnName { get; }
    Property Value
    Type Description
    System.String
    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<T>.PopulateNewFromLookupColumnName

    SingleItem

    The single item this grid is being displayed against and that all entities of type T in the grid are related to

    Declaration
    public IBaseEntity SingleItem { get; }
    Property Value
    Type Description
    IBaseEntity

    Methods

    AlterQuery(QueryableExecuter<T>)

    Additionally alters the base query alteration by ensuring all entities returned are related to the SingleItem by having their CollectionRelationshipColumnName have the same value as the SingleItem ID

    Declaration
    protected override QueryableExecuter<T> AlterQuery(QueryableExecuter<T> query)
    Parameters
    Type Name Description
    QueryableExecuter<T> query

    The existing query to return all the results that will populate the grid

    Returns
    Type Description
    QueryableExecuter<T>

    An altered query that also ensures all entities returned are related to the SingleItem by having their CollectionRelationshipColumnName have the same value as the SingleItem ID

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<T>.AlterQuery(LemonEdge.Utils.QueryableExecuter<T>)

    GetGridController(IBaseGridAnyRelatedCollection<T>)

    Creates the new default grid related view any controller with the specified instance of a default grid any related view

    Declaration
    public static BaseGridAnyRelatedCollectionController<T> GetGridController(IBaseGridAnyRelatedCollection<T> view)
    Parameters
    Type Name Description
    IBaseGridAnyRelatedCollection<T> view

    The instance of the default grid any related view in the client application

    Returns
    Type Description
    BaseGridAnyRelatedCollectionController<T>

    A new default grid view any related controller with the specified instance of a default grid any related view

    UpdateNewItem(T)

    Updates any new item created in this grid to also have the CollectionRelationshipColumnName property hold the value of the SingleItem ID

    Declaration
    protected override Task UpdateNewItem(T item)
    Parameters
    Type Name Description
    T item

    The new item created for this grid

    Returns
    Type Description
    System.Threading.Tasks.Task

    A task indicating the completion of the operation

    Overrides
    LemonEdge.Client.Core.Views.Core.BaseGridControllerAny<T>.UpdateNewItem(T)

    Implements

    IBaseGridController
    IModelViewController
    ICollectionExportable
    INewGridItemImplementor<T>
    ICopyGridItemImplementor<T>
    IGrid
    IDeleteGridItemImplementor<T>

    Extension Methods

    MiscExtensions.SetIfNotEqual<T, P>(T, Expression<Func<T, P>>, P)
    ReflectionExtensions.ClearEventInvocations(Object, String)
    StringExtensions.ToCSVFormatString(Object, Type)
    SQLExtensions.ToSQLValue(Object, Boolean)
    In This Article
    Back to top © LemonTree Software Ltd. All rights reserved.