Exemple #1
0
        internal static TheFOR GetScreenOptions(Guid FormId, TheClientInfo pClientInfo, TheFormInfo pInfo)
        {
            TheFOR tso = null;

            if (pInfo != null && !string.IsNullOrEmpty(pInfo.ModelID))
            {
                var tMods = pInfo.ModelID.Split(';');
                foreach (string tM in tMods)
                {
                    string tPlS1 = TheCommonUtils.LoadStringFromDisk($"FormORs\\{tM}.cdeFOR", null);
                    if (!string.IsNullOrEmpty(tPlS1))
                    {
                        TheFOR Ttso = TheCommonUtils.DeserializeJSONStringToObject <TheFOR>(tPlS1);
                        tso = SetTSO(tso, Ttso);
                        if (!string.IsNullOrEmpty(Ttso?.StartGroup))
                        {
                            pInfo.PropertyBag = new ThePropertyBag {
                                $"StartGroup={Ttso.StartGroup}"
                            }
                        }
                        ;
                    }
                }
            }

            string tPlS = TheCommonUtils.LoadStringFromDisk($"{pClientInfo.UserID}\\{FormId}.cdeFOR", null);

            if (!string.IsNullOrEmpty(tPlS))
            {
                TheFOR Ttso = TheCommonUtils.DeserializeJSONStringToObject <TheFOR>(tPlS);
                tso = SetTSO(tso, Ttso, true);
                if (pInfo != null && !string.IsNullOrEmpty(Ttso?.StartGroup))
                {
                    pInfo.PropertyBag = new ThePropertyBag {
                        $"StartGroup={Ttso.StartGroup}"
                    }
                }
                ;
            }
            return(tso);
        }