首页 | 互联网 | IT动态 | Cisco | Windows | Linux | Java | .Net | Oracle | 华为 | 存储世界 | 服务器 | 网络设备 | IDC | 安全 | 求职招聘
IT培训 | 数字网校 | 技术专题 | 电子书下载 | 教学视频 | 网页设计 | 平面设计 | 解决方案 | 直播室 | 虚拟考场 | 搜索 | 博客 | 沙龙 | 论坛
中国IT实验室Dotnet频道
中国IT教育
首页 ASP.NET  C#  XML/WebService ADO.NET VC.NET VB.NET .NET 资讯动态 专题 RSS订阅 讨论 下载
您现在的位置: 中国IT实验室 >> Dotnet >> ASP.NET >> 文章正文

ASP.NET系统用户权限设计

文章来源51cto博客 作者熔岩 更新时间2008-5-12 保存本文保存本文 推荐给好友推荐给好友 收藏本页收藏本页

     图形的绘制涉及到的类并不是很多,如果要绘制图形,特别是这种数据源动态变化的图形,坐标位置的控制非常关键。
  这个Demo采用oracle数据库为数据源:

CREATE TABLE IVAN_TEST
(
  MAJOR  VARCHAR2(50),
  GRADE  NUMBER,
  ID     NUMBER(10)
)
Html中加入:


 <asp:Button ID="btnColumn" runat="server" Text="DrawColumn" OnClick="btnColumn_Click" /><br />
        <asp:Image ID="imgColumn" runat="server" />
CS:()
protected void btnColumn_Click(object sender, EventArgs e)
    ...{
        Bitmap img = new Bitmap(300,300);
        Graphics g = Graphics.FromImage(img);
         StringFormat drawFormat = new System.Drawing.StringFormat(StringFormatFlags.DirectionVertical);
        StringFormat drawFormat1 = new System.Drawing.StringFormat(StringFormatFlags.DisplayFormatControl);
        g.Clear(ColorTranslator.FromHtml("#F0F0F0"));
        g.DrawString("Student Grade Column Chart", new Font("Arial",1, FontStyle.Bold),Brushes.Black , 100, 0,drawFormat1);

        //get datasource
        string sql = "select * from ivan_test";
        DAL.ISDApp01 cDal = new DAL.ISDApp01();
        DataSet ds = cDal.ExecuteQuery(sql);


        for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
        ...{
            int grade = Convert.ToInt32(ds.Tables[0].Rows[i][1]);  //grade
            string Major = ds.Tables[0].Rows[i][0].ToString();

           //注意坐标的控制
            g.FillRectangle(new SolidBrush(GetColor(i)), (i * 35) + 15, 150 - grade, 20,
            grade+50 );

            g.DrawRectangle(new Pen(Color.Black), (i * 35) + 15, 150 - grade, 20,
            grade + 50);

            g.DrawString(Major, new Font("Arial", 12, FontStyle.Bold), Brushes.Red, (i * 35) + 20, 200,drawFormat);

            g.DrawString(grade.ToString(), new Font("Arial", 12, FontStyle.Bold), Brushes.Red, (i * 35) + 20, 130 - grade );

        }
         //show chart

        string Filepath = Server.MapPath("Images") + "//" + "Column.jpg";
        if (File.Exists(Filepath))
        ...{
            File.Delete(Filepath);
        }
        img.Save(Filepath, ImageFormat.Jpeg);
        img.Dispose();
        g.Dispose();
        this.imgColumn.ImageUrl = Filepath;
    }

【责编:Ken】

中国IT教育

相关产品和培训
文章评论
 友情推荐链接
 认证培训
 专题推荐

 ·关于Java框架技术专题
 ·XML全攻略技术专题
 ·JAVA开源技术介绍专题
 ·Java嵌入式开发之J2ME技术专题
 ·超前体验 Oracle 11g的5个新特性
 ·揭密使用VB.NET的五个实用技巧
 ·Oracle和SQL Server常用函数对比专题
 ·展现C#世界 C#程序设计专题
 ·Java入门 Tomcat的配置技巧精华专题
 ·Oracle RMAN物理备份技术详解
 今日更新
 社区讨论
 博客论点
 频道精选
 Dotnet频道相关导航