Take a look at your code:
private void AdditionalStaffEmailListBox_SelectedIndexChanged(object sender, EventArgs e)
{
AdditionalStaffEmailListBox = new ListBox();
}
Inside of
SelectedIndexChanged
event you are creating new ListBox under the variable name equals to existing object. Newly created object is never used. It's invisible to user too.
It's not clear what you are trying to achieve...