图表控件asp.net c#

本文关键字:net asp 控件 | 更新日期: 2023-09-27 18:00:09

ASPX和C#代码

    <%@ Page Title="" Language="C#" MasterPageFile="~/Site.master" AutoEventWireup="true" CodeFile="Default2.aspx.cs" Inherits="Default2" %>
    <asp:Content ID="Content1" ContentPlaceHolderID="HeadContent" Runat="Server">
    </asp:Content>
    <asp:Content ID="Content2" ContentPlaceHolderID="MainContent" Runat="Server">
        <asp:Chart ID="Chart1" runat="server">
            <Series>
                <asp:Series Name="Series1" XValueMember="status" YValueMembers="Total">
                </asp:Series>
            </Series>
            <ChartAreas>
                <asp:ChartArea Name="ChartArea1">
                </asp:ChartArea>
            </ChartAreas>
        </asp:Chart>
    </asp:Content>

protected void Page_Load(object sender, EventArgs e)
        {
            SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["conn"].ToString());
            SqlCommand com = new SqlCommand("select status , Total from ch where id = @id", con);
            com.Parameters.AddWithValue("@id", Session["id"]);
            DataTable dt = new DataTable();
            con.Open();
            SqlDataAdapter sqlDa = new SqlDataAdapter(com);
            sqlDa.Fill(dt);
            if (dt.Rows.Count > 0)
            {
                Chart1.DataSource = dt;
                Chart1.DataBind();
            }
            else
            {
            }
            con.Close();
        }

我使用的是图表类型"列"。

我希望,如果数据库中没有数据,图表的初始点(0,0)是可见的。这可能吗。。。???

我使用的是sql server 2008,visual studio 2010 asp.net c#。

图表控件asp.net c#

然后您需要在数据表中有一个手动点。以下是数据适配器填充数据表后修改的代码块:

SqlDataAdapter sqlDa = new SqlDataAdapter(com);
sqlDa.Fill(dt);
if (dt.Rows.Count == 0)
{
   DataRow rw = dt.NewRow();
   rw["status"] = "";
   rw["Total"] = 0;
   dt.Rows.Add(rw);
}
Chart1.DataSource = dt;
Chart1.DataBind();
con.Close();

它检查数据表是否有行,如果没有,则添加一个值为0的行。