Settings technological forms web applications are carried out using the service DynamicPageTuner
. The class was in section unity
.
<unity xmlns="http://schemas.microsoft.com/practices/2010/unity">
<...>
<container>
<...>
<!-- Configuration service for customization of technological forms in the project. -->
<register type="NewPlatform.Flexberry.Web.Page.IDynamicPageTuner, ICSSoft.STORMNET.Web.AjaxControls" mapTo="WebFormsTestStand.DynamicPageTuner, TestStand(ASP.NET Application)">
<lifetime type="singleton" />
<constructor />
</register>
<...>
</container>
</unity>
It can help you:
- change the appearance of technological forms,
- configure the form title,
- to defer loading of the list
- customize the order and display of columns and more.
Example lazy loading of data
public class DynamicPageTuner : IDynamicPageTuner, IDynamicPageWolvTuner
{
/// <summary>
/// Sample implementation of the configuration method of <see cref="WebObjectListView" /> on the technology pages.
/// </summary>
/// <param name="pageId">page ID.</param>
/// <param name="wolv">Instance of <see cref="WebObjectListView" /> to configure.</param>
public void Tune(DynamicPageIdentifier pageId, WebObjectListView wolv)
{
// For the list of classes included lazy loading of data
// for other pages, nothing changes.
if (pageId == DynamicPageIdentifier.SecurityClassesList)
{
if (!wolv.Page.IsPostBack)
wolv.SkipDataLoad = true;
}
}
}
an Example of configuring display columns
public class DynamicPageTuner : IDynamicPageTuner, IDynamicPageWolvTuner
{
// Configure the order and number of columns on the user list.
if (pageId == DynamicPageIdentifier.SecurityUsersList)
{
wolv.ColumnsConfig.Add(new ColumnsConfig
(Information.ExtractPropertyPath<Agent>(x => x.Login), true));
wolv.ColumnsConfig.Add(new ColumnsConfig
(Information.ExtractPropertyPath<Agent>(x => x.Name), true));
wolv.ColumnsConfig.Add(new ColumnsConfig
(Information.ExtractPropertyPath<Agent>(x => x.Creator), true));
wolv.ColumnsConfig.Add(new ColumnsConfig
(Information.ExtractPropertyPath<Agent>(x => x.CreateTime), true));
wolv.ColumnsConfig.Add(new ColumnsConfig
(Information.ExtractPropertyPath<Agent>(x => x.Enabled), true));
}
}
As follows: