I changed printer and all the print settings are gone

The values are not lost. Your slicer swapped the presets that were holding them.

Why does picking a new printer reset everything?

A print profile belongs to a printer. Every preset declares which machines it fits, through the compatible_printers and compatible_printers_condition keys in the slicer's PrintConfig.cpp, so choosing a different machine loads a different profile, and the layer height and temperatures you tuned stay with the profile you left.

How do I change printer and keep my settings?

Open the Convert tab, tick Printer on its own, and pick the new machine. Whatever you did not tick keeps the value that is in your file, including any edit you made before converting.

What if there is no profile for my printer?

The closest one stands in and a Notes row says so, naming what you asked for and what arrived. Check the temperatures and line widths in that row before you print.

Which values will not follow me to a new machine?

The ones the machine owns rather than the print. Retraction is set per printer, and a filament-to-nozzle map cannot reach a printer with fewer nozzles. See what a conversion cannot carry.

Do my parts move to the new bed?

They are placed again for its size. When either bed size is unknown they stay exactly where they were, and a Notes row names the bed that could not be read.