colordropdownlist.cs
来自「该项目中对 SQLHelper 类进行了简单封装」· CS 代码 · 共 176 行
CS
176 行
/*
* ColorDropDownList.cs @Microsoft Visual Studio 2008 <.NET Framework 3.5>
* AfritXia
* 2006-07-20
*
* Copyright(c) http://www.AfritXia.NET/
*
*/
using System;
using System.Collections;
using System.Text;
using System.Web;
using System.Web.UI;
using System.Web.UI.HtmlControls;
using System.Web.UI.WebControls;
namespace NET.AfritXia.Components.Web.TextPane
{
/// <summary>
/// 颜色下拉列表框
/// </summary>
internal class ColorDropDownList : ToolbarDropDownList
{
// 首选项
private string m_firstOption = null;
#region 类 ColorDropDownList 构造器
/// <summary>
/// 类 ColorDropDownList 参数构造器
/// </summary>
private ColorDropDownList() : base()
{
}
/// <summary>
/// 类 ColorDropDownList 参数构造器
/// </summary>
/// <param name="commandName">命令名称</param>
private ColorDropDownList(string commandName)
: base(commandName)
{
}
#endregion
/// <summary>
/// 控件初始化函数
/// </summary>
protected override void OnInit(EventArgs e)
{
base.OnInit(e);
// 添加首选项
if (this.m_firstOption != null && this.m_firstOption != "")
this.Items.Add(new ListItem(this.m_firstOption));
// 加入颜色值
foreach (object value in Enum.GetValues(typeof(MyColor)))
{
// 转型为枚举值
MyColor enumValue = (MyColor)value;
// 获取字符串值
string valueString = value.ToString();
// 建立选项 <option></option>
ListItem option = new ListItem();
// 设置选项值
option.Value = valueString;
// 设置选项文本
option.Text = valueString;
// 添加 CSS 样式表
option.Attributes.CssStyle.Add("background-color", valueString);
// 如果背景色过深,则需要反色
if (IsNeedToInverseColor(enumValue))
option.Attributes.CssStyle.Add("color", MyColor.White.ToString());
this.Items.Add(option);
}
}
/// <summary>
/// 是否需要反色
/// </summary>
/// <param name="enumValue">颜色枚举值</param>
/// <returns></returns>
private bool IsNeedToInverseColor(MyColor enumValue)
{
if (enumValue == MyColor.Black || enumValue == MyColor.Blue)
return true;
if (enumValue == MyColor.Gray || enumValue == MyColor.Green)
return true;
if (enumValue == MyColor.Maroon)
return true;
if (enumValue == MyColor.Navy)
return true;
if (enumValue == MyColor.Olive)
return true;
if (enumValue == MyColor.Purple)
return true;
if (enumValue == MyColor.Teal)
return true;
return false;
}
/// <summary>
/// 建立颜色下拉列表框
/// </summary>
/// <param name="firstOption">首选项</param>
/// <param name="commandName">命令名称</param>
/// <returns></returns>
public static ColorDropDownList Create(string firstOption, string commandName)
{
ColorDropDownList dropDownList = new ColorDropDownList(commandName);
// 设置首选项
dropDownList.m_firstOption = firstOption;
return dropDownList;
}
#region MyColor 自定义颜色枚举
/// <summary>
/// MyColor 自定义颜色枚举
/// </summary>
private enum MyColor
{
// Aqua = 0x00ffff
Aqua,
// Black = 0x000000
Black,
// Blue = 0x0000ff
Blue,
// Fuchsia = 0xff00ff
Fuchsia,
// Gray = 0x808080
Gray,
// Green = 0x008000
Green,
// Lime = 0x00ff00
Lime,
// LightGray = 0xd3d3d3
LightGrey,
// Maroon = 0x800000
Maroon,
// Navy = 0x000080
Navy,
// Olive = 0x808000
Olive,
// Pink = 0xffc0cb
Pink,
// Purple = 0x800080
Purple,
// Red = 0xff0000
Red,
// Silver = 0xc0c0c0
Silver,
// Teal = 0x008080
Teal,
// White = 0xffffff
White,
// Yellow = 0xffff00
Yellow
};
#endregion
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?