public GridView(
     Key key = null,
     Axis scrollDirection                = Axis.vertical,
     bool reverse                        = false,
     ScrollController controller         = null,
     bool?primary                        = null,
     ScrollPhysics physics               = null,
     bool shrinkWrap                     = false,
     EdgeInsetsGeometry padding          = null,
     int?crossAxisCount                  = null,
     float mainAxisSpacing               = 0.0f,
     float crossAxisSpacing              = 0.0f,
     float childAspectRatio              = 1.0f,
     bool addAutomaticKeepAlives         = true,
     bool addRepaintBoundaries           = true,
     float?cacheExtent                   = null,
     List <Widget> children              = null,
     DragStartBehavior dragStartBehavior = DragStartBehavior.start
     ) : base(
         key: key,
         scrollDirection: scrollDirection,
         reverse: reverse,
         controller: controller,
         primary: primary,
         physics: physics,
         shrinkWrap: shrinkWrap,
         padding: padding,
         cacheExtent: cacheExtent,
         dragStartBehavior: dragStartBehavior
         )
 {
     gridDelegate = new SliverGridDelegateWithFixedCrossAxisCount(
         crossAxisCount: crossAxisCount ?? 0,
         mainAxisSpacing: mainAxisSpacing,
         crossAxisSpacing: crossAxisSpacing,
         childAspectRatio: childAspectRatio
         );
     childrenDelegate = new SliverChildListDelegate(
         children ?? new List <Widget>(),
         addAutomaticKeepAlives: addAutomaticKeepAlives,
         addRepaintBoundaries: addRepaintBoundaries
         );
 }
        public static SliverGrid count(
            Key key                = null,
            int?crossAxisCount     = null,
            float mainAxisSpacing  = 0.0f,
            float crossAxisSpacing = 0.0f,
            float childAspectRatio = 1.0f,
            List <Widget> children = null
            )
        {
            SliverGridDelegate gridDelegate = new SliverGridDelegateWithFixedCrossAxisCount(
                crossAxisCount: crossAxisCount ?? 0,
                mainAxisSpacing: mainAxisSpacing,
                crossAxisSpacing: crossAxisSpacing,
                childAspectRatio: childAspectRatio
                );

            return(new SliverGrid(
                       key: key,
                       layoutDelegate: new SliverChildListDelegate(children ?? new List <Widget>()),
                       gridDelegate: gridDelegate

                       ));
        }