public new Field this[string name] { get { if (string.IsNullOrEmpty(name)) { throw new ArgumentNullException("name", "name cannot be null."); } Field field; if (_fieldLookup.TryGetValue(name, out field)) { return field; } return null; } }