Hello. All my Snap content overlaps. Here is my crude implementation:
for (int h = 0; h < dt.Rows.Count - 1; h++)
{
if (h != 0)
h = current + 1;
if (h >= dt.Rows.Count - 1)
break;
iCurrentGroupId =
int.Parse(dt.Rows[h]["groupId"].ToString());
Snap newSnap = new Snap();
newSnap.ID =
"Snap" + h.ToString();
SnapContent snapHeader = new SnapContent();
Literal snapHeaderText = new Literal();
snapHeaderText.Text =
@"<br/><br/><br/><div style='CURSOR: move; width: 100%;'><table cellspacing='0' cellpadding='0' width='100%' border='0' style='background-color:Aqua; font-family:Arial Narrow'><tr><td width='10' style='cursor: hand' align='right'>" + dt.Rows[h]["groupDescription"].ToString() + @"<img onclick='" + newSnap.ID.ToString() + @".toggleExpand();' src='ImageFolder/minus.gif' width='15' height='15' border='0'></td></tr></table></div>";
snapHeader.Controls.Add(snapHeaderText);
SnapContent snapHeaderCollapsed = new SnapContent();
Literal snapHeaderCollapsedText = new Literal();
snapHeaderCollapsedText.Text =
@"<br/><br/><br/><div style='CURSOR: move; width: 100%;'>
<table cellspacing='0' cellpadding='0' width='100%' border='0' style='background-color:Aqua; font-family:Arial Narrow'>
<tr>
<td width='30' style='cursor: hand' align='right'>"
+ dt.Rows[h]["groupDescription"].ToString() +
@"<img onclick='" + newSnap.ID.ToString() + @".toggleExpand();' src='ImageFolder/plus.gif' width='15' height='15' border='0'></td>
</tr></table></div>"
;
snapHeaderCollapsed.Controls.Add(snapHeaderCollapsedText);
newSnap.Header = snapHeader;
newSnap.CollapsedHeader = snapHeaderCollapsed;
Literal snapContentText = new Literal();
SnapContent snapContent = new SnapContent();
for (int g = h; g <= dt.Rows.Count - 1; g++)
{
if ((iCurrentGroupId == int.Parse(dt.Rows[g]["groupId"].ToString())))
{
double dpercent = (double.Parse(dt.Rows[g]["totalAmount"].ToString()) / dTotal) * 100;
int ipercent = (int)dpercent;
int ipercentleft = 100 - ipercent;
snapContentText.Text +=
@"<table width='100%' style='font-family:Arial Narrow'>
<tr><td style='width:40%'>"
+ dt.Rows[g]["familyDescription"].ToString() + @"</td>
<td style='width:50%'>
<table style='width:100%'><tr style='width:100%'>
<td style='style=background-image:url('/ImageFolder/percentage_bar_small.JPG');background-repeat:repeat-x;width:"
+ ipercent.ToString() + @"%'></td>
<td style='width:"
+ ipercentleft.ToString() + @"%'> </td>
</tr>
</table>
<td style='width:10%;'>"
+ String.Format("{0:0.00}", dpercent) + @"%</td>
</tr></table>"
;
}
else
{
current = g;
break;
}
}
snapContent.Controls.Add(snapContentText);
newSnap.Content = snapContent;
//Snap1.Content = newSnap.Content;
Snap1.Content.Controls.Add(newSnap);
}
SnapContent snapFooter = new SnapContent();
Literal snapFooterText = new Literal();
snapFooterText.Text =
@"<table width='100%' style='font-family:Arial Narrow'>
<tr><td style='width:40%'>Total:</td>
<td style='width:50%'> </td><td style='width:10%;background-color:Aqua;'>100%</td>
</tr></table>"
;
snapFooter.Controls.Add(snapFooterText);
Snap1.Footer = snapFooter;
}
Do I need docking containers? Also why does the footer not display?
Thanks in advance,
Jim