protected string DoGrid(Control ctrl)
{
CarrotGridPaged myctrl = (CarrotGridPaged)ctrl;
CarrotGridView theGrid = myctrl.TheGrid;
Table table = new Table();
table.CssClass = theGrid.CssClass;
myctrl.Page.Controls.Add(table);
TableHeaderRow trh = new TableHeaderRow();
trh.CssClass = theGrid.HeaderStyle.CssClass;
table.Rows.Add(trh);
foreach (DataControlField col in theGrid.Columns) {
TableHeaderCell thc = new TableHeaderCell();
trh.Controls.Add(thc);
thc.Text = col.HeaderText;
}
for (int r = 0; r < 5; r++) {
TableRow tr = new TableRow();
if (r % 2 == 0) {
tr.CssClass = theGrid.RowStyle.CssClass;
} else {
tr.CssClass = theGrid.AlternatingRowStyle.CssClass;
}
table.Rows.Add(tr);
foreach (DataControlField col in theGrid.Columns) {
TableCell tc = new TableCell();
tc.Text = " ";
tr.Controls.Add(tc);
if (col is BoundField) {
var bf = (BoundField)col;
tc.Text = bf.DataField;
}
if (col is TemplateField) {
var tf = (TemplateField)col;
try {
PlaceHolder ph = new PlaceHolder();
tc.Controls.Add(ph);
tf.ItemTemplate.InstantiateIn(ph);
} catch { }
}
if (col is CarrotHeaderSortTemplateField) {
var ctf = (CarrotHeaderSortTemplateField)col;
tc.Text = ctf.DataField;
try {
if (ctf.ShowBooleanImage || ctf.ShowEnumImage) {
PlaceHolder ph = new PlaceHolder();
tc.Controls.Add(ph);
CarrotBooleanImageItemTemplate imgTemplate = new CarrotBooleanImageItemTemplate(ctf.DataField, ctf.BooleanImageCssClass);
ctf.ItemTemplate = imgTemplate;
ctf.ItemTemplate.InstantiateIn(ph);
}
} catch { }
}
}
}
return RenderCtrl(table);
}