public void Insert(String key, Object value, int Position) { Dictionary.Add(key, value); //Relies on ArgumentException from above if key already exists. orderedKeys.Insert(Position,key); }