I may not be describing things clearly. My implementation is completely custom, in principle it is similar to the OfflineMap features in 100.1. This was done prior, and the current approach in 100.1 does not yet meet our requirements so we are not changing to use the these features in the API.
The WebMap configuration is extracted as is from Portal and that is saved on the client. Our implementation actually converts it to xml and keeps it in the app.config file. This is all done with some extensions to standard json.net serialization. While the offline replica databases are loaded into the map on the client, this serialized definition is used to hydrate the properties of the feature layers as they are created. This includes the PopupDefintion for the FeatureLayer. Again json.net is used to de-serialize these objects Where we store the IsRequired is really just an implementation detail, right now it is stored separate from the WebMap configuration.
When a user wants to edit a feature class the applications uses the PopupField properties to determine if a specific field is editable. My thinking was that if I could inherit from PopupField the IsRequired property could be added and it would be available when my collection of bound FieldItems is built out on our data entry form. We have a solution in place, but I find it a bit clunky.
I am unclear about your suggestion. I think I understand how IValueConverter works, but I don't know what you are suggesting when you say
binds to the popup definition/layer
Thanks. I appreciate your taking that time to respond
-Joe
Thanks,
-Joe