Archives / 2008 / September
  • Development Tip #1: Wrap your Date Selector inside a User control

    When developing web application, you will need to decide which date selector you are going to use , you may choose between the Caledar Extendar , or any other 3'rd party controls (like infragistics ,Telerik ,...).In the future , if you decided to change the date selector for some reason , you will need to go to all places in which you used the date selector and change the code to use the new date selector control !


  • Comparing ListView with GridView,DataList and Repeater

    The ListView control is a new data presentation control that was added in ASP.Net 3.5.You may wonder why its added to the framework , and what it provide .

    From what i have seen, ListView control was added to provide The following functionalities :

    1. A very flexible and customizable layout.
    2. A built in data paging support with the new DataPager control.
    3. Support data grouping (repeating items) in a flexible way.
    4. Built in support for deleting,inserting,paging,sorting,and updating the data.

    Now , to compare the ListView control with the dataList,GridView and repeater control , lets look at the table below :

    Supported Funcationalities
    Control Paging Data Grouping Provide Flexible Layout Update,Delete Insert Sorting
    ListView supported supported supported supported supported supported
    GridView supported Not supported Not Supported supported Not Supported supported
    DataList Not supported supported supported Not supported Not supported Not supported
    Repeater Not supported Not supported supported Not supported Not supported Not supported

    * Supported: means that it's provided out of the box without any custom code or hacks.

    * Not Supported: means that it's not provided out of the box by the control but it could be possible to implement it using custom code \ hacks.

    The GridView : it supports paging but it doesn't provide a flexible layout , since its mainly used to display the data in a table based layout.And If we looked at data inserting , the Gridview doesn't have a built in support for inserting data( since it doesn't call the insert method of it underlying data source when you click on a button with a CommadName set to "Insert" ).

    The DataList : it support data grouping ( through its RepeatColumns property) , but it doesn't have a built in support for paging,inserting ,deleting , updating the data. and if you looked at its laout , you will find that by default  the datalist renders as html table and you will have to set its flowLayout to "Flow" to stop that behaviour.

    The Repeater control : you will find that it provides a flexible layout but it doesn't support data grouping ,inserting,deleting , updating  and paging through the data .


    Summary :

    The ListView control was added to provide a rich data control that can support all the required functionalities at the same time , so now you can easily display a fully customizable layout that supports Grouping,paging , inserting , deleting , updating and sorting the data.


    Anas Ghanem