예제 #1
0
        public virtual void ListField(string fieldName)
        {
            Debug.Assert(!string.IsNullOrWhiteSpace(fieldName));

            var methodName = string.Format("List{0}", fieldName);

            var methodInfo = GetType().GetMethod(methodName, BindingFlags.Public | BindingFlags.NonPublic | BindingFlags.Instance);

            if (methodInfo != null)
            {
                var origAddToListedNames = AddToListedNames;

                var origListNum = ListNum;

                AddToListedNames = true;

                methodInfo.Invoke(this, null);

                if (AddToListedNames && origListNum + 1 == ListNum)
                {
                    ListedNameList.Add(GetName(fieldName));
                }

                AddToListedNames = origAddToListedNames;
            }
        }
예제 #2
0
        public virtual void Clear()
        {
            ListedNameList.Clear();

            NameList.Clear();

            Index = -1;

            Buf.Clear();

            Buf01.Clear();

            EditRec = false;

            EditField = false;

            ShowDesc = false;

            FieldDesc = FieldDesc.None;

            BufSize = 0;

            FillChar = '\0';

            Offset = 0;

            ErrorFieldName = null;

            ErrorMessage = "";

            RecordType = null;

            EditRecord = null;

            NewRecordUid = 0;

            FullDetail = false;

            ResolveEffects = false;

            LookupMsg = false;

            NumberFields = false;

            ExcludeROFields = false;

            ListNum = 1;
        }