EnumList is the only column type that allows selection of multiple list items. There are many times when there is a need to provide a dynamic dropdown list AND apply Validation on the selections. This is not an issue normally for a single choice list as the dropdown choices ARE the valid choices. No further validation is necessary (normally).
One simple validation in an EnumList is limiting the number of selections. For example, if I had an app to create Teams, I would likely want to limit the number of persons per team. I want to show a dropdown of ALL available people to choose from but then force the number chosen to be equal to the Team size - no more, no less.
Another use case might be assignment of, say, Departments and Teams to a user. I may wish to allow assignment of multiple Departments but in another EnumList force Team choices such that there is at least one team from each Department. All rather than the tedious activity of assigning each Department and list of associated teams in child table rows.
Because the Valid_If is used by the dynamic dropdown lists, it cannot also be used to limit or validate list choices in the manner described above. A workaround I use is adding another column that performs the validation and is only shown when an error occurs. But this is not ideal.
My request is that for EnumList column, separate the dropdown expression and the validation expression as two distinct properties so they can be applied simultaneously to a column’s definition.