The asp.net grid is a very good presentation layer tool. Easy to use, powerful, extensible and so on. Most of the customization can be done in the designer, which is another big plus for me.
Windows grid is totally sucks, so I am using a third party grid for winforms, but I never neede a third party grid for asp.net...
But there is one thing that I always needed that is not in the designer. Let's say you will create a dynamic link, but need two fields from the data item, not just one... That means that the URLField, and the URLFormatting alone wouldn't be enough. A little trick that I use in this case :
- Create the hyperlink column as if it needs just one field
- Convert it to a template column
- Switch to HTML view
- The NavigateURL should read something like : NavigateUrl='<%# DataBinder.Eval(Container, "DataItem.MyFirstField", "MyLinkedPage.aspx?ID={0}") %>'
- Change it to : NavigateUrl='<%# String.Format("MyLinkedPage.aspx?ID={0}&Type={1}", DataBinder.Eval(Container, "DataItem.MyIDField"), , DataBinder.Eval(Container, "DataItem.MyTypeField")) %>'
- DONE
:)
Easy , isn't it ?