More in this section

Forums / Developing with Sitefinity / Module management

Module management

2 posts, 0 answered
  1. Len
    Len avatar
    14 posts
    Registered:
    10 Jul 2008
    31 Aug 2009
    Link to this post
    I have created a module for a customer which is based upon the generic content module.  The customer wants to be better able to manage hundreds of items.  For instance, when displaying the sitefinity/admin/modules.aspx page I'm not even sure if paging is used.  Do I have control over this?  As well, the customer would like to display custom columns in the grid.  Also, the customer would like to filter this grid using pull-downs or something like that.

    So there are my questions:

    - Is the module grid pageable?
    - Can I define custom columns for this grid?
    - Can I implement filtering through pull-down values?

    Thanks for any help.

    Len

  2. Ivan Dimitrov
    Ivan Dimitrov avatar
    16072 posts
    Registered:
    12 Sep 2017
    31 Aug 2009
    Link to this post
    Hi Len,

    I suppose that you are talking about ContentItemsList view from which your view inherits. In contentItemsList RadGrid control that lists all items and has id="ItemsGrid" is a required control. In the last version of Sitefinity we use ClientSide binding through WebServices.

    - Is the module grid pageable?

    RadGrid supports paging. You can set this by the following properties in your view template - AllowPaging="true" PageSize="5"

    -
    - Can I define custom columns for this grid? If you are not using ClientSide binding you could set DataKeyNames and GridBoundColumns for the RadGrid Control.
    If you are using ClientSide binding you can use telerik:ClientTemplate to bind MetaData or a contentItem property ( say ID). You can modify DataBindGrid js function which is exposed in the view template. In case you have some custom logic you need to create a WebService which has needed methods or bind the grid manually on the server.

    Can I implement filtering through pull-down values?

    Since the RadGrid is client side bounded you can pass the filter as filterExpressionsAsSQL variable in DataBindGrid function.

    Example:

    function DataBindGrid(currentPageIndex, pageSize, sortExpressionsAsSQL, filterExpressionsAsSQL) { 
        var requiredMetaFields = ['Name', 'Author', 'Description']; 
        var cultureInfoField = document.getElementById('<%= cultureInfoField.ClientID %>'); 
        Telerik.Cms.Engine.Services.ContentService.GetContentItems(currentPageIndex * pageSize, pageSize, 
        sortExpressionsAsSQL, "Category IN ('MyCategory')", requiredMetaFields, cultureInfoField.value, dataProviderName, updateGrid, OnFailed); 


    Greetings,
    Ivan Dimitrov
    the Telerik team

    Instantly find answers to your questions on the new Telerik Support Portal.
    Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
2 posts, 0 answered