Przeciążanie operatora [ ] http://stackoverflow.com/questions/424669/how-do-i-overload-the-operator-in-c-sharp
public int this[int key] { get { return GetValue(key); } set { SetValue(key,value); } }