I use the self-enrol method in most all of my courses, and limit it to only members of a particular cohort. Most courses then have multiple self-enrol options for different cohorts. When someone goes to enrol in a new course, as it should, only the method that matches their cohort displays an "Enrol me" button. The others display the message "Only members of cohort '...' can self-enrol."
Wouldn't it be cleaner to just not display those options? And if none of the options match the student's cohorts, then default display "You cannot enrol yourself in this course." message? Or even just making it an option to hide the enrollment method if not available.
Related forum: **https://moodle.org/mod/forum/discuss.php?d=421679#p1699226