1

ランダムな色を取得する方法があります:

 private System.Drawing.Color GetRandColor()
    {
        Random r = new Random(DateTime.Now.Millisecond);

        System.Drawing.Color[] colours = 
        {
            System.Drawing.Color.Yellow, 
            System.Drawing.Color.LightGreen, 
            System.Drawing.Color.LightCyan,
            System.Drawing.Color.LightSalmon,  
            System.Drawing.Color.LightSkyBlue
        };

        int i = r.Next(0, colours.Length - 1);

        System.Drawing.Color c = colours[i];

        return c; 
    }

だから私がやりたいのは、ページがロードされたときにこのランダムな色を私のhtmlに渡すことです。したがって、それはどういうわけかPage_Loadに入れられます:

 protected void Page_Load(object sender, EventArgs e)
    {
              // code to set button color 
    } 

<asp:Button ID="Button1" runat="server" Text="Button" BackColor=GetRandColor()/>
4

2 に答える 2

3

C#コード自体でボタンの背景色を変更できます。方法を確認してください。

private void GetRandColor()
    {
        Random r = new Random(DateTime.Now.Millisecond);

        System.Drawing.Color[] colours = 
        {
            System.Drawing.Color.Yellow, 
            System.Drawing.Color.LightGreen, 
            System.Drawing.Color.LightCyan,
            System.Drawing.Color.LightSalmon,  
            System.Drawing.Color.LightSkyBlue
        };

        int i = r.Next(0, colours.Length - 1);

        System.Drawing.Color c = colours[i];

        Button1.BackColor = c;
    }
于 2013-01-09T05:18:08.280 に答える
0

あなたはあなたの方法を一般的なものとして持つことができます

private void GetRandColor(object sender)
{
    Random r = new Random(DateTime.Now.Millisecond);

    System.Drawing.Color[] colours = 
    {
        System.Drawing.Color.Yellow, 
        System.Drawing.Color.LightGreen, 
        System.Drawing.Color.LightCyan,
        System.Drawing.Color.LightSalmon,  
        System.Drawing.Color.LightSkyBlue
    };

    int i = r.Next(0, colours.Length - 1);

    System.Drawing.Color c = colours[i];

    Button btn = (Button)sender; 
    btn.BackColor = c;
}
于 2013-01-09T05:34:39.793 に答える