Share via


PageContent.Create Generic Method (Generic ListProvider, Generic ListColumnCollection, TaskCollection, Generic Converter, Generic Converter)

Initializes an instance of the PageContent class that is used by a page in the Administration Console to provide a list pane, a task pane, and a details pane. This method also provides additional detail information about a business object that is displayed in the details pane.

Namespace: Microsoft.EssentialBusinessServer.Console.ObjectModel
Assembly: Microsoft.EssentialBusinessServer.Console.ObjectModel (in microsoft.essentialbusinessserver.console.objectmodel.dll)

Usage

Syntax

'Declaration
Public Shared Function Create(Of TBusinessObject, TDetailBusinessObject) ( _
    listProvider As ListProvider(Of TBusinessObject), _
    listColumns As ListColumnCollection(Of TBusinessObject), _
    tasks As TaskCollection, _
    detailBusinessObjectToDetailColumns As Converter(Of TDetailBusinessObject, DetailColumnCollection), _
    businessObjectToDetailBusinessObject As Converter(Of TBusinessObject, TDetailBusinessObject) _
) As PageContent
public static PageContent Create<TBusinessObject,TDetailBusinessObject> (
    ListProvider<TBusinessObject> listProvider,
    ListColumnCollection<TBusinessObject> listColumns,
    TaskCollection tasks,
    Converter<TDetailBusinessObject,DetailColumnCollection> detailBusinessObjectToDetailColumns,
    Converter<TBusinessObject,TDetailBusinessObject> businessObjectToDetailBusinessObject
)
public:
generic<typename TBusinessObject, typename TDetailBusinessObject>
static PageContent^ Create (
    ListProvider<TBusinessObject>^ listProvider, 
    ListColumnCollection<TBusinessObject>^ listColumns, 
    TaskCollection^ tasks, 
    Converter<TDetailBusinessObject, DetailColumnCollection^>^ detailBusinessObjectToDetailColumns, 
    Converter<TBusinessObject, TDetailBusinessObject>^ businessObjectToDetailBusinessObject
)

Parameters

  • listProvider
    A ListProvider object that returns instances of business objects for use within the page.
  • tasks
    A TaskCollection object that provides the tasks in the task pane of the page.
  • detailBusinessObjectToDetailColumns
    A delegate method that converts an instance of a detail business object to the information that is displayed in the details pane of the page. The method takes a detail business object as an argument and returns a DetailColumnCollection.
  • businessObjectToDetailBusinessObject
    A delegate method that converts an instance of a business object to an instance of a detail business object.

Return Value

An instance of PageContent.

Example

The following code example shows how to initialize a PageContent object that includes two delegate methods. One delegate method adds additional detail information to a business object, and the other delegate method converts a business object to a DetailGroup, which is contained in a DetailColumnCollection:

protected override PageContent CreateContent()
{
    PageContent page = PageContent.Create<BusinessObject>(
        CreateListProvider(), 
        CreateListColumns(), 
        CreateTasks(), 
        GetDetails, 
        ConvertBusinessObject);
    
    return page;
}

private static DetailColumnCollection GetDetails(DetailBusinessObject detailObj)
{
    DetailColumnCollection columns = new DetailColumnCollection();
    DetailColumn column = new DetailColumn();
    DetailGroup group = new DetailGroup("Hardware Information");

    group.Add("Computer Name", detailObj.ComputerName);
    group.Add("CPU", detailObj.Cpu);
    group.Add("Disk", detailObj.Disk);
    group.Add("RAM", detailObj.Ram);

    column.Add(group);
    columns.Add(column);

    return columns;
}

private DetailBusinessObject ConvertBusinessObject(BusinessObject businessObj)
{
    DetailBusinessObject detailObj = new DetailBusinessObject();

    detailObj.ComputerName = businessObj.ComputerName;
    detailObj.Cpu = "2.5 GHz";
    detailObj.Disk = 350 GB";
    detailObj.Ram = "4 GB";

    return detailObj;
}

Exceptions

Exception type Condition
ArgumentNullException

One or more of the parameters are null.

Remarks

TBusinessObject represents a business object that encapsulates information and methods that relate to business data or business functionality. The information in the business object is exposed as properties.

TDetailBusinessObject represents a detail business object that includes additional or different information related to the business object that is displayed in the details pane when an item is selected in the list pane. The additional information can come from a secondary source, such as a database, file, or service.

Thread Safety

Any public static (Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Platforms

Development Platforms

Windows Server 2008 64-bit Edition, Windows Vista 64-bit Edition, Windows Essential Business Server 2008 Standard, Windows Essential Business Server 2008 Premium

Target Platforms

Windows Essential Business Server 2008 Standard, Windows Essential Business Server 2008 Premium

See Also

Reference

PageContent Class
PageContent Members
Microsoft.EssentialBusinessServer.Console.ObjectModel Namespace