this用法1:引用類的當前實例,限定被相似的名稱隱藏的成員
如:
public class Person
{
public string Name{get;set;}
public string Age{get;set;}
public Person(string Name,string Age)
{
this.Name=Name;
this.Age=Age;
}
}
this用法2:將對象作爲參數傳遞到其他方法
如:
public static class Helper
{
public static void PrintName(Person person)
{
MessageBox.Show("姓名:"+person.Name);
}
}
this用法3:擴展方法的對象
如:
public enum StateLevelEnum
{
/// <summary>
/// 非關鍵指標(灰色)
/// </summary>
NotKeyItem = 0,
/// <summary>
/// 正常(綠色)
/// </summary>
Normal = 1,
/// <summary>
/// 二級告警級別(黃色)
/// </summary>
Level2 = 2,
/// <summary>
/// 一級告警級別(紅色)
/// </summary>
Level1 = 3
}
public static string ToUIString(this StateLevelEnum level)
{
string result = "";
switch (level)
{
case StateLevelEnum.NotKeyItem:
result = "非關鍵指標";
break;
case StateLevelEnum.Normal:
result = "正常";
break;
case StateLevelEnum.Level2:
result = "二級告警";
break;
case StateLevelEnum.Level1:
result = "一級告警";
break;
default:
break;
}
return result;
}
調用:StateLevelEnum.Normal.ToUIString(); 返回 "正常"