The way to append depends on your requirements. You could simply define the StreamWriter for append like
TextWriter writer = new StreamWriter(Filename, true);
But I doubt that's not what you're after since that will also repeat the opening tags (xml and namespace).
In order to add more than one object to the file, one way would be to use a generic list and to add the desired objects into it. After that serialize the list. Something like
public System.Collections.Generic.List<apikeys> apikeyslist = new System.Collections.Geneiric.List<apikeys>();</apikeys></apikeys>
...
APIKEYS info = new APIKEYS();
info.APIKEY = txtAPI.Text;
info.VCODE = txtVerC.Text;
apikeyslist.add(info);
XML.SaveData(apikeyslist, "data.XML");