Welcome to the forums.
There are a number of reasons.
Make sure for one that you are logged into the program. Check your settings in the Launcher under Trainz settings and Internet tab.
Missing dependencies can cause faulty locomotives. Check that nothing is open for edit. To do this, you use content manager (Manage Content on the Launcher) and where it says Installed, pull the down arrow and change that to Open for edit.
If anything is open for edit, highlight it, and choose revert. That will submit the assets and make them available.
Check the download station (DLS) for dependencies by right-clicking on the faulty locomotives and choosing download.
Check for updates. Right-click on the faulty assets, and choose view asset version. This will open up a new window. If anything new is available for download, right-click on those assets and choose download.
If these things don't work, you need to run a database repair. You can do this from Content Manager as well as the Launcher. Click on Developer and choose Repair database.
A database repair can take some time, usually a few minutes or longer, depending upon how much content you have installed.
Hope this helps.