反射调用静态类的方法,字段
//System.Math.Cos(33);
//Type theMathType = Type.GetType("System.Math");
//Type[] parameterTypes = new Type[1];
//parameterTypes[0] = Type.GetType("System.Double");
//MethodInfo CosinInfo = theMathType.GetMethod("Cos", parameterTypes);
//Object[] parameters = new Object[1];
//parameters[0] = 45;
//Object result = CosinInfo.Invoke(null, parameters);
//Console.WriteLine(result.ToString());
/*
Type BstrType = typeof(ButtonImages);
FieldInfo finfo = BstrType.GetField("Btn_" + text);
string img = finfo.GetValue(null) as string;
*/
public static class BtnImages
{
public static string ImgBasePath = "~/Images/site/Buttons/";
private const string Pattern = "<img src='/Images/site/Buttons/{0}' border='0' onerror='setButtonImg(this)' />";
private const string PatternMethod = "<img src='/Images/site/Buttons/{0}' alt='{1}' title='{1}' border='0' onerror='setButtonImg(this)' />";
#region
/// <summary>
/// Btn-bc.gif
/// </summary>
public static string Btn_bc = string.Format(Pattern, "Btn-bc.gif");
/// <summary>
/// Btn-bcdd.gif
/// </summary>
public static string Btn_bcdd = string.Format(Pattern, "Btn-bcdd.gif");
/// <summary>
/// Btn-bj.gif
/// </summary>
public static string Btn_bj = string.Format(Pattern, "Btn-bj.gif");
/// <summary>
/// Btn-cfdd.gif
/// </summary>
public static string Btn_cfdd = string.Format(Pattern, "Btn-cfdd.gif");
/// <summary>
/// Btn-cjcgry.gif
/// </summary>
public static string Btn_cjcgry = string.Format(Pattern, "Btn-cjcgry.gif");
/// <summary>
/// Btn-cjjtgly.gif
/// </summary>
public static string Btn_cjjtgly = string.Format(Pattern, "Btn-cjjtgly.gif");
/// <summary>
/// Btn-cjxsry.gif
/// </summary>
public static string Btn_cjxsry = string.Format(Pattern, "Btn-cjxsry.gif");
/// <summary>
/// Btn-ck.gif
/// </summary>
public static string Btn_ck = string.Format(Pattern, "Btn-ck.gif");
/// <summary>
/// Btn-DownArrow.gif
/// </summary>
public static string Btn_DownArrow = string.Format(Pattern, "Btn-DownArrow.gif");
/// <summary>
/// Btn-drdd.gif
/// </summary>
public static string Btn_drdd = string.Format(Pattern, "Btn-drdd.gif");
/// <summary>
/// Btn-fb.gif
/// </summary>
public static string Btn_fb = string.Format(Pattern, "Btn-fb.gif");
/// <summary>
/// Btn-fbgszx.gif
/// </summary>
public static string Btn_fbgszx = string.Format(Pattern, "Btn-fbgszx.gif");
/// <summary>
/// Btn-fbxcpxx.gif
/// </summary>
public static string Btn_fbxcpxx = string.Format(Pattern, "Btn-fbxcpxx.gif");
/// <summary>
/// Btn-fh.gif
/// </summary>
public static string Btn_fh = string.Format(Pattern, "Btn-fh.gif");
/// <summary>
/// Btn-fk.gif
/// </summary>
public static string Btn_fk = string.Format(Pattern, "Btn-fk.gif");
/// <summary>
/// Btn-fsly.gif
/// </summary>
public static string Btn_fsly = string.Format(Pattern, "Btn-fsly.gif");
/// <summary>
/// Btn-fszgys.gif
/// </summary>
public static string Btn_fszgys = string.Format(Pattern, "Btn-fszgys.gif");
/// <summary>
/// Btn-gl.gif
/// </summary>
public static string Btn_gl = string.Format(Pattern, "Btn-gl.gif");
/// <summary>
/// Btn-gx.gif
/// </summary>
public static string Btn_gx = string.Format(Pattern, "Btn-gx.gif");
/// <summary>
/// Btn-gxsl.gif
/// </summary>
public static string Btn_gxsl = string.Format(Pattern, "Btn-gxsl.gif");
/// <summary>
/// Btn-hbsxdd.gif
/// </summary>
public static string Btn_hbsxdd = string.Format(Pattern, "Btn-hbsxdd.gif");
/// <summary>
/// Btn-hf.gif
/// </summary>
public static string Btn_hf = string.Format(Pattern, "Btn-hf.gif");
/// <summary>
/// Btn-jj.gif
/// </summary>
public static string Btn_jj = string.Format(Pattern, "Btn-jj.gif");
/// <summary>
/// Btn-jy.gif
/// </summary>
public static string Btn_jy = string.Format(Pattern, "Btn-jy.gif");
/// <summary>
/// Btn-ll.gif
/// </summary>
public static string Btn_ll = string.Format(Pattern, "Btn-ll.gif");
/// <summary>
/// Btn-psfs.gif
/// </summary>
public static string Btn_psfs = string.Format(Pattern, "Btn-psfs.gif");
/// <summary>
/// Btn-qd.gif
/// </summary>
public static string Btn_qd = string.Format(Pattern, "Btn-qd.gif");
/// <summary>
/// Btn-qr.gif
/// </summary>
public static string Btn_qr = string.Format(Pattern, "Btn-qr.gif");
/// <summary>
/// Btn-qrdd.gif
/// </summary>
public static string Btn_qrdd = string.Format(Pattern, "Btn-qrdd.gif");
/// <summary>
/// Btn-qrwwtj.gif
/// </summary>
public static string Btn_qrwwtj = string.Format(Pattern, "Btn-qrwwtj.gif");
/// <summary>
/// Btn-qx.gif
/// </summary>
public static string Btn_qx = string.Format(Pattern, "Btn-qx.gif");
/// <summary>
/// Btn-qy.gif
/// </summary>
public static string Btn_qy = string.Format(Pattern, "Btn-qy.gif");
/// <summary>
/// Btn-sc.gif
/// </summary>
public static string Btn_sc = string.Format(Pattern, "Btn-sc.gif");
/// <summary>
/// Btn-scsxdd.gif
/// </summary>
public static string Btn_scsxdd = string.Format(Pattern, "Btn-scsxdd.gif");
/// <summary>
/// Btn-scxz.gif
/// </summary>
public static string Btn_scxz = string.Format(Pattern, "Btn-scxz.gif");
/// <summary>
/// Btn-sqrz.gif
/// </summary>
public static string Btn_sqrz = string.Format(Pattern, "Btn-sqrz.gif");
/// <summary>
/// Btn-syb.gif
/// </summary>
public static string Btn_syb = string.Format(Pattern, "Btn-syb.gif");
/// <summary>
/// Btn-syy.gif
/// </summary>
public static string Btn_syy = string.Format(Pattern, "Btn-syy.gif");
/// <summary>
/// Btn-tg.gif
/// </summary>
public static string Btn_tg = string.Format(Pattern, "Btn-tg.gif");
/// <summary>
/// Btn-tijiao.gif
/// </summary>
public static string Btn_tijiao = string.Format(Pattern, "Btn-tijiao.gif");
/// <summary>
/// Btn-tj.gif
/// </summary>
public static string Btn_tj = string.Format(Pattern, "Btn-tj.gif");
/// <summary>
/// Btn-tjbbc.gif
/// </summary>
public static string Btn_tjbbc = string.Format(Pattern, "Btn-tjbbc.gif");
/// <summary>
/// Btn-tjdd.gif
/// </summary>
public static string Btn_tjdd = string.Format(Pattern, "Btn-tjdd.gif");
/// <summary>
/// Btn-wfk.gif
/// </summary>
public static string Btn_wfk = string.Format(Pattern, "Btn-wfk.gif");
/// <summary>
/// Btn-wqr.gif
/// </summary>
public static string Btn_wqr = string.Format(Pattern, "Btn-wqr.gif");
/// <summary>
/// Btn-xg.gif
/// </summary>
public static string Btn_xg = string.Format(Pattern, "Btn-xg.gif");
/// <summary>
/// Btn-xyb.gif
/// </summary>
public static string Btn_xyb = string.Format(Pattern, "Btn-xyb.gif");
/// <summary>
/// Btn-xyy.gif
/// </summary>
public static string Btn_xyy = string.Format(Pattern, "Btn-xyy.gif");
/// <summary>
/// Btn-yc.gif
/// </summary>
public static string Btn_yc = string.Format(Pattern, "Btn-yc.gif");
/// <summary>
/// Btn-yfk.gif
/// </summary>
public static string Btn_yfk = string.Format(Pattern, "Btn-yfk.gif");
/// <summary>
/// Btn-zffs.gif
/// </summary>
public static string Btn_zffs = string.Format(Pattern, "Btn-zffs.gif");
#endregion
public static string ResolveBtnImg(string text)
{
// text = GetPYString(text);
//System.Math.Cos(33);
//Type theMathType = Type.GetType("System.Math");
//Type[] parameterTypes = new Type[1];
//parameterTypes[0] = Type.GetType("System.Double");
//MethodInfo CosinInfo = theMathType.GetMethod("Cos", parameterTypes);
//Object[] parameters = new Object[1];
//parameters[0] = 45;
//Object result = CosinInfo.Invoke(null, parameters);
//Console.WriteLine(result.ToString());
/*
Type BstrType = typeof(ButtonImages);
FieldInfo finfo = BstrType.GetField("Btn_" + text);
string img = finfo.GetValue(null) as string;
*/
string py = GetPYString(text);
return string.Format(PatternMethod, "Btn-"+py +".gif",text);
}
/// <summary>
/// 汉字转拼音缩写
/// </summary>
/// <param name="str">要转换的汉字字符串</param>
/// <returns>拼音缩写</returns>
private static string GetPYString(string str)
{
string tempStr = "";
foreach (char c in str)
{
if ((int)c >= 33 && (int)c <= 126)
{//字母和符号原样保留
tempStr += c.ToString();
}
else
{//累加拼音声母
tempStr += GetPYChar(c.ToString());
}
}
return tempStr;
}
/// <summary>
/// 取单个字符的拼音声母
/// </summary>
/// <param name="c">要转换的单个汉字</param>
/// <returns>拼音声母</returns>
private static string GetPYChar(string c)
{
byte[] array = new byte[2];
array = System.Text.Encoding.Default.GetBytes(c);
int i = (short)(array[0] - '\0') * 256 + ((short)(array[1] - '\0'));
if (i < 0xB0A1) return "*";
if (i < 0xB0C5) return "a";
if (i < 0xB2C1) return "b";
if (i < 0xB4EE) return "c";
if (i < 0xB6EA) return "d";
if (i < 0xB7A2) return "e";
if (i < 0xB8C1) return "f";
if (i < 0xB9FE) return "g";
if (i < 0xBBF7) return "h";
if (i < 0xBFA6) return "g";
if (i < 0xC0AC) return "k";
if (i < 0xC2E8) return "l";
if (i < 0xC4C3) return "m";
if (i < 0xC5B6) return "n";
if (i < 0xC5BE) return "o";
if (i < 0xC6DA) return "p";
if (i < 0xC8BB) return "q";
if (i < 0xC8F6) return "r";
if (i < 0xCBFA) return "s";
if (i < 0xCDDA) return "t";
if (i < 0xCEF4) return "w";
if (i < 0xD1B9) return "x";
if (i < 0xD4D1) return "y";
if (i < 0xD7FA) return "z";
return "*";
}
}
{
public static string ImgBasePath = "~/Images/site/Buttons/";
private const string Pattern = "<img src='/Images/site/Buttons/{0}' border='0' onerror='setButtonImg(this)' />";
private const string PatternMethod = "<img src='/Images/site/Buttons/{0}' alt='{1}' title='{1}' border='0' onerror='setButtonImg(this)' />";
#region
/// <summary>
/// Btn-bc.gif
/// </summary>
public static string Btn_bc = string.Format(Pattern, "Btn-bc.gif");
/// <summary>
/// Btn-bcdd.gif
/// </summary>
public static string Btn_bcdd = string.Format(Pattern, "Btn-bcdd.gif");
/// <summary>
/// Btn-bj.gif
/// </summary>
public static string Btn_bj = string.Format(Pattern, "Btn-bj.gif");
/// <summary>
/// Btn-cfdd.gif
/// </summary>
public static string Btn_cfdd = string.Format(Pattern, "Btn-cfdd.gif");
/// <summary>
/// Btn-cjcgry.gif
/// </summary>
public static string Btn_cjcgry = string.Format(Pattern, "Btn-cjcgry.gif");
/// <summary>
/// Btn-cjjtgly.gif
/// </summary>
public static string Btn_cjjtgly = string.Format(Pattern, "Btn-cjjtgly.gif");
/// <summary>
/// Btn-cjxsry.gif
/// </summary>
public static string Btn_cjxsry = string.Format(Pattern, "Btn-cjxsry.gif");
/// <summary>
/// Btn-ck.gif
/// </summary>
public static string Btn_ck = string.Format(Pattern, "Btn-ck.gif");
/// <summary>
/// Btn-DownArrow.gif
/// </summary>
public static string Btn_DownArrow = string.Format(Pattern, "Btn-DownArrow.gif");
/// <summary>
/// Btn-drdd.gif
/// </summary>
public static string Btn_drdd = string.Format(Pattern, "Btn-drdd.gif");
/// <summary>
/// Btn-fb.gif
/// </summary>
public static string Btn_fb = string.Format(Pattern, "Btn-fb.gif");
/// <summary>
/// Btn-fbgszx.gif
/// </summary>
public static string Btn_fbgszx = string.Format(Pattern, "Btn-fbgszx.gif");
/// <summary>
/// Btn-fbxcpxx.gif
/// </summary>
public static string Btn_fbxcpxx = string.Format(Pattern, "Btn-fbxcpxx.gif");
/// <summary>
/// Btn-fh.gif
/// </summary>
public static string Btn_fh = string.Format(Pattern, "Btn-fh.gif");
/// <summary>
/// Btn-fk.gif
/// </summary>
public static string Btn_fk = string.Format(Pattern, "Btn-fk.gif");
/// <summary>
/// Btn-fsly.gif
/// </summary>
public static string Btn_fsly = string.Format(Pattern, "Btn-fsly.gif");
/// <summary>
/// Btn-fszgys.gif
/// </summary>
public static string Btn_fszgys = string.Format(Pattern, "Btn-fszgys.gif");
/// <summary>
/// Btn-gl.gif
/// </summary>
public static string Btn_gl = string.Format(Pattern, "Btn-gl.gif");
/// <summary>
/// Btn-gx.gif
/// </summary>
public static string Btn_gx = string.Format(Pattern, "Btn-gx.gif");
/// <summary>
/// Btn-gxsl.gif
/// </summary>
public static string Btn_gxsl = string.Format(Pattern, "Btn-gxsl.gif");
/// <summary>
/// Btn-hbsxdd.gif
/// </summary>
public static string Btn_hbsxdd = string.Format(Pattern, "Btn-hbsxdd.gif");
/// <summary>
/// Btn-hf.gif
/// </summary>
public static string Btn_hf = string.Format(Pattern, "Btn-hf.gif");
/// <summary>
/// Btn-jj.gif
/// </summary>
public static string Btn_jj = string.Format(Pattern, "Btn-jj.gif");
/// <summary>
/// Btn-jy.gif
/// </summary>
public static string Btn_jy = string.Format(Pattern, "Btn-jy.gif");
/// <summary>
/// Btn-ll.gif
/// </summary>
public static string Btn_ll = string.Format(Pattern, "Btn-ll.gif");
/// <summary>
/// Btn-psfs.gif
/// </summary>
public static string Btn_psfs = string.Format(Pattern, "Btn-psfs.gif");
/// <summary>
/// Btn-qd.gif
/// </summary>
public static string Btn_qd = string.Format(Pattern, "Btn-qd.gif");
/// <summary>
/// Btn-qr.gif
/// </summary>
public static string Btn_qr = string.Format(Pattern, "Btn-qr.gif");
/// <summary>
/// Btn-qrdd.gif
/// </summary>
public static string Btn_qrdd = string.Format(Pattern, "Btn-qrdd.gif");
/// <summary>
/// Btn-qrwwtj.gif
/// </summary>
public static string Btn_qrwwtj = string.Format(Pattern, "Btn-qrwwtj.gif");
/// <summary>
/// Btn-qx.gif
/// </summary>
public static string Btn_qx = string.Format(Pattern, "Btn-qx.gif");
/// <summary>
/// Btn-qy.gif
/// </summary>
public static string Btn_qy = string.Format(Pattern, "Btn-qy.gif");
/// <summary>
/// Btn-sc.gif
/// </summary>
public static string Btn_sc = string.Format(Pattern, "Btn-sc.gif");
/// <summary>
/// Btn-scsxdd.gif
/// </summary>
public static string Btn_scsxdd = string.Format(Pattern, "Btn-scsxdd.gif");
/// <summary>
/// Btn-scxz.gif
/// </summary>
public static string Btn_scxz = string.Format(Pattern, "Btn-scxz.gif");
/// <summary>
/// Btn-sqrz.gif
/// </summary>
public static string Btn_sqrz = string.Format(Pattern, "Btn-sqrz.gif");
/// <summary>
/// Btn-syb.gif
/// </summary>
public static string Btn_syb = string.Format(Pattern, "Btn-syb.gif");
/// <summary>
/// Btn-syy.gif
/// </summary>
public static string Btn_syy = string.Format(Pattern, "Btn-syy.gif");
/// <summary>
/// Btn-tg.gif
/// </summary>
public static string Btn_tg = string.Format(Pattern, "Btn-tg.gif");
/// <summary>
/// Btn-tijiao.gif
/// </summary>
public static string Btn_tijiao = string.Format(Pattern, "Btn-tijiao.gif");
/// <summary>
/// Btn-tj.gif
/// </summary>
public static string Btn_tj = string.Format(Pattern, "Btn-tj.gif");
/// <summary>
/// Btn-tjbbc.gif
/// </summary>
public static string Btn_tjbbc = string.Format(Pattern, "Btn-tjbbc.gif");
/// <summary>
/// Btn-tjdd.gif
/// </summary>
public static string Btn_tjdd = string.Format(Pattern, "Btn-tjdd.gif");
/// <summary>
/// Btn-wfk.gif
/// </summary>
public static string Btn_wfk = string.Format(Pattern, "Btn-wfk.gif");
/// <summary>
/// Btn-wqr.gif
/// </summary>
public static string Btn_wqr = string.Format(Pattern, "Btn-wqr.gif");
/// <summary>
/// Btn-xg.gif
/// </summary>
public static string Btn_xg = string.Format(Pattern, "Btn-xg.gif");
/// <summary>
/// Btn-xyb.gif
/// </summary>
public static string Btn_xyb = string.Format(Pattern, "Btn-xyb.gif");
/// <summary>
/// Btn-xyy.gif
/// </summary>
public static string Btn_xyy = string.Format(Pattern, "Btn-xyy.gif");
/// <summary>
/// Btn-yc.gif
/// </summary>
public static string Btn_yc = string.Format(Pattern, "Btn-yc.gif");
/// <summary>
/// Btn-yfk.gif
/// </summary>
public static string Btn_yfk = string.Format(Pattern, "Btn-yfk.gif");
/// <summary>
/// Btn-zffs.gif
/// </summary>
public static string Btn_zffs = string.Format(Pattern, "Btn-zffs.gif");
#endregion
public static string ResolveBtnImg(string text)
{
// text = GetPYString(text);
//System.Math.Cos(33);
//Type theMathType = Type.GetType("System.Math");
//Type[] parameterTypes = new Type[1];
//parameterTypes[0] = Type.GetType("System.Double");
//MethodInfo CosinInfo = theMathType.GetMethod("Cos", parameterTypes);
//Object[] parameters = new Object[1];
//parameters[0] = 45;
//Object result = CosinInfo.Invoke(null, parameters);
//Console.WriteLine(result.ToString());
/*
Type BstrType = typeof(ButtonImages);
FieldInfo finfo = BstrType.GetField("Btn_" + text);
string img = finfo.GetValue(null) as string;
*/
string py = GetPYString(text);
return string.Format(PatternMethod, "Btn-"+py +".gif",text);
}
/// <summary>
/// 汉字转拼音缩写
/// </summary>
/// <param name="str">要转换的汉字字符串</param>
/// <returns>拼音缩写</returns>
private static string GetPYString(string str)
{
string tempStr = "";
foreach (char c in str)
{
if ((int)c >= 33 && (int)c <= 126)
{//字母和符号原样保留
tempStr += c.ToString();
}
else
{//累加拼音声母
tempStr += GetPYChar(c.ToString());
}
}
return tempStr;
}
/// <summary>
/// 取单个字符的拼音声母
/// </summary>
/// <param name="c">要转换的单个汉字</param>
/// <returns>拼音声母</returns>
private static string GetPYChar(string c)
{
byte[] array = new byte[2];
array = System.Text.Encoding.Default.GetBytes(c);
int i = (short)(array[0] - '\0') * 256 + ((short)(array[1] - '\0'));
if (i < 0xB0A1) return "*";
if (i < 0xB0C5) return "a";
if (i < 0xB2C1) return "b";
if (i < 0xB4EE) return "c";
if (i < 0xB6EA) return "d";
if (i < 0xB7A2) return "e";
if (i < 0xB8C1) return "f";
if (i < 0xB9FE) return "g";
if (i < 0xBBF7) return "h";
if (i < 0xBFA6) return "g";
if (i < 0xC0AC) return "k";
if (i < 0xC2E8) return "l";
if (i < 0xC4C3) return "m";
if (i < 0xC5B6) return "n";
if (i < 0xC5BE) return "o";
if (i < 0xC6DA) return "p";
if (i < 0xC8BB) return "q";
if (i < 0xC8F6) return "r";
if (i < 0xCBFA) return "s";
if (i < 0xCDDA) return "t";
if (i < 0xCEF4) return "w";
if (i < 0xD1B9) return "x";
if (i < 0xD4D1) return "y";
if (i < 0xD7FA) return "z";
return "*";
}
}