For cleaner code you better create a new port object when opening. Because it is a system resource you must handle it carefully, so close it after
end of usage every time. Else the port may be blocked til next reboot. Separate UI-code from communication code to avoid messy code.
Read the article and code of
SerialPort Sample in VB.NET (C#).