Click here to Skip to main content
15,878,953 members
Articles / Web Development / ASP.NET
Tip/Trick

Gradient Color C#, ASP.NET

Rate me:
Please Sign up or sign in to vote.
5.00/5 (2 votes)
14 Apr 2013CPOL 11.3K   209   6  
This a trick to generate random gradient color in your ASP.NET project, which will change randomly on every post-back.

Introduction

This is a trick to generate a random gradient color in your ASP.NET project, which will change randomly on every post-back.

Background

Required references are given below:

C#
using System.Drawing.Drawing2D;
using System.Drawing;
using System.IO;
using System.Drawing.Imaging;

Using the code  

Following is my code for the ProcessRequest method handler: 

C#
public void ProcessRequest (HttpContext context) {

    string[] fColor = new string[] {"Gray","Skyblue","Green","Yellow" };
    string[] sColor = new string[] {"white","Red","Pink","blue" };
    Random r = new Random();
    string firstColor = fColor[r.Next(fColor.Length -1)];
    string secondColor = sColor[r.Next(sColor.Length - 1)];
    Int32 height = 786;
    Bitmap img = new Bitmap(2, height);
    Graphics g = Graphics.FromImage(img);
    //Drawing2D
    LinearGradientBrush brush = new LinearGradientBrush(
        Point.Empty, 
        new Point(0, height), 
        this.getColorFromString(firstColor), 
        this.getColorFromString(secondColor));
    
    g.DrawRectangle(new System.Drawing.Pen(brush, 10), new Rectangle(0, 0, 2, height));
    context.Response.ContentType = ".jpg";
    MemoryStream str = new MemoryStream();
    img.Save(str, ImageFormat.Jpeg);
    context.Response.BinaryWrite(str.ToArray());
}
private System.Drawing.Color getColorFromString(string SColor)
{
    return System.Drawing.Color.FromName(SColor);
}

Points of Interest

Provide every postback a new background whenever user browses pages of the website.

License

This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)



Comments and Discussions

 
-- There are no messages in this forum --