Я пытаюсь показать свою диаграмму слияния в определенной области, особенно там, где я вызываю функцию CreateChart в моем файле aspx при нажатии кнопки. То, как я это делаю сейчас, заключается в том, что диаграмма загружается, как только загружается страница, но я хотел бы видеть, что диаграмма загружается только при нажатии кнопки. Я пробовал разные способы, но не смог сделать это правильно, так как я не так хорошо знаком с диаграммами слияния. Спасибо. Вот мой файл ASPX:
<table class="style1">
<td class="style8">
<asp:Button ID="btnClick" runat="server" Height="29px" Text="Button"
Width="158px" onclick="btnClick_Click" />
</td>
<td class="style4" colspan="2">
<% =CreateChart() %> </td>
</tr>
</table>
и вот мой код:
public string CreateChart()
{
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString);
string sqlStatement = "select Status1, Count(Status1) as TotalCount from MyTable where Closing_Date = '" + txtStartClosingDate.Text + "' and Closing_Date <= '" + txtEndClosingDate.Text + "' and Status1 is not null group by Status1";
SqlCommand cmd = new SqlCommand(sqlStatement, con);
con.Open();
SqlDataReader reader = cmd.ExecuteReader();
string strXML;
strXML = "<graph labelDisplay='auto' useEllipsesWhenOverflow='1' decimals='2' decimalPrecision='0' showValues='1' enablesmartlabels='0' showlabels='0' legendAllowDrag='1' numberSuffix=' Days' showLegend='1' pieSliceDepth='45' formatNumberScale='0'>";
while (reader.Read())
{
strXML += "<set name='" + reader["Category"].ToString() + "' value='" + reader["AvgNumbers"].ToString() + "' />";
}
strXML += "</graph>";
return FusionCharts.RenderChart("../FusionCharts/Pie2D.swf", "ChartID", strXML, "FactorySum", "450", "450", false, false);
}