SetMask() private method

private SetMask ( int m, bool val ) : void
m int
val bool
return void
示例#1
0
		protected internal virtual void AddedControl (Control control, int index)
		{
			ResetControlsCache ();

			/* Ensure the control don't have more than 1 parent */
			if (control._parent != null)
				control._parent.Controls.Remove (control);

			control._parent = this;
			Control nc = ((stateMask & IS_NAMING_CONTAINER) != 0) ? this : NamingContainer;

			if ((stateMask & (INITING | INITED)) != 0) {
				control.InitRecursive (nc);
				control.SetMask (REMOVED, false);
			} else {
				control.SetNamingContainer (nc);
				control.SetMask (REMOVED, false);
				return;
			}

			if ((stateMask & (VIEWSTATE_LOADED | LOADED)) != 0) {
				if (pendingVS != null) {
					object vs;
					bool byId = LoadViewStateByID;
					string id;
					
					if (byId) {
						control.EnsureID ();
						id = control.ID;
						vs = pendingVS [id];
					} else {
						id = null;
						vs = pendingVS [index];
					}
					
					if (vs != null) {
						if (byId)
							pendingVS.Remove (id);
						else
							pendingVS.Remove (index);
						
						if (pendingVS.Count == 0)
							pendingVS = null;

						control.LoadViewStateRecursive (vs);
					}
				}
			}

			if ((stateMask & LOADED) != 0)
				control.LoadRecursive ();

			if ((stateMask & PRERENDERED) != 0)
				control.PreRenderRecursiveInternal ();
		}
示例#2
0
		protected internal virtual void RemovedControl (Control control)
		{
			control.UnloadRecursive (false);
			control._parent = null;
			control._page = null;
			control._namingContainer = null;
			if ((control.stateMask & AUTOID_SET) != 0) {
				control._userId = null;
				control.SetMask (ID_SET, false);
			}
			control.NullifyUniqueID ();
			control.SetMask (REMOVED, true);
			ResetControlsCache ();
		}