Code:
/ Dotnetfx_Win7_3.5.1 / Dotnetfx_Win7_3.5.1 / 3.5.1 / DEVDIV / depot / DevDiv / releases / whidbey / NetFXspW7 / ndp / fx / src / xsp / System / Web / UI / HtmlControls / HtmlInputRadioButton.cs / 1 / HtmlInputRadioButton.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * HtmlInputRadioButton.cs * * Copyright (c) 2000 Microsoft Corporation */ namespace System.Web.UI.HtmlControls { using System.ComponentModel; using System; using System.Collections; using System.Collections.Specialized; using System.Web; using System.Web.UI; using System.Security.Permissions; ////// [ DefaultEvent("ServerChange"), SupportsEventValidation, ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class HtmlInputRadioButton : HtmlInputControl, IPostBackDataHandler { private static readonly object EventServerChange = new object(); /* * Creates an intrinsic Html INPUT type=radio control. */ public HtmlInputRadioButton() : base("radio") { } /* * Checked property. */ ////// The ///class defines the methods, /// properties, and events for the HtmlInputRadio control. This class allows /// programmatic access to the HTML <input type= /// radio> /// element on the server. /// /// [ WebCategory("Default"), DefaultValue(""), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden) ] public bool Checked { get { string s = Attributes["checked"]; return((s != null) ? (s.Equals("checked")) : false); } set { if (value) Attributes["checked"] = "checked"; else Attributes["checked"] = null; } } ////// Gets or sets a value indicating whether a radio button is /// currently selected or not. /// ////// public override string Name { get { string s = Attributes["name"]; return ((s != null) ? s : String.Empty); } set { Attributes["name"] = MapStringAttributeToString(value); } } ////// Gets the value of the HTML /// Name attribute that will be rendered to the browser. /// ////// public override string Value { get { string val = base.Value; if (val.Length != 0) return val; val = ID; if (val != null) return val; // if specific value is not provided, use the UniqueID return UniqueID; } set { base.Value = value; } } // Value that gets rendered for the Name attribute internal override string RenderedNameAttribute { get { // For radio buttons, we must make the name unique, but can't just use the // UniqueID because all buttons in a group must have the same name. So // we replace the last part of the UniqueID with the group Name. string name = base.RenderedNameAttribute; string uid = UniqueID; int lastColon = uid.LastIndexOf(IdSeparator); if (lastColon >= 0) name = uid.Substring(0, lastColon+1) + name; return name; } } [ WebCategory("Action"), WebSysDescription(SR.Control_OnServerCheckChanged) ] public event EventHandler ServerChange { add { Events.AddHandler(EventServerChange, value); } remove { Events.RemoveHandler(EventServerChange, value); } } /* * This method is invoked just prior to rendering. */ ////// Gets or sets the contents of a text box. /// ////// /// protected internal override void OnPreRender(EventArgs e) { base.OnPreRender(e); if (Page != null && !Disabled) { Page.RegisterRequiresPostBack(this); Page.RegisterEnabledControl(this); } // if no change handler, no need to save posted property if (Events[EventServerChange] == null && !Disabled) { ViewState.SetItemDirty("checked",false); } } /* * Method used to raise the OnServerChange event. */ ////// protected virtual void OnServerChange(EventArgs e) { EventHandler handler = (EventHandler)Events[EventServerChange]; if (handler != null) handler(this, e); } ////// /// protected override void RenderAttributes(HtmlTextWriter writer) { if (Page != null) { Page.ClientScript.RegisterForEventValidation(Value, RenderedNameAttribute); } writer.WriteAttribute("value", Value); Attributes.Remove("value"); base.RenderAttributes(writer); } /* * Method of IPostBackDataHandler interface to process posted data. * RadioButton determines the posted radio group state. */ ////// /// bool IPostBackDataHandler.LoadPostData(string postDataKey, NameValueCollection postCollection) { return LoadPostData(postDataKey, postCollection); } ////// /// protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection) { string postValue = postCollection[RenderedNameAttribute]; bool valueChanged = false; if ((postValue != null) && postValue.Equals(Value)) { if (Checked == false) { ValidateEvent(Value, RenderedNameAttribute); Checked = true; // only fire change event for RadioButton that is being checked valueChanged = true; } } else { if (Checked == true) { Checked = false; } } return valueChanged; } /* * Method of IPostBackDataHandler interface which is invoked whenever posted data * for a control has changed. RadioButton fires an OnServerChange event. */ ////// /// void IPostBackDataHandler.RaisePostDataChangedEvent() { RaisePostDataChangedEvent(); } ////// /// protected virtual void RaisePostDataChangedEvent() { OnServerChange(EventArgs.Empty); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007. //------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- /* * HtmlInputRadioButton.cs * * Copyright (c) 2000 Microsoft Corporation */ namespace System.Web.UI.HtmlControls { using System.ComponentModel; using System; using System.Collections; using System.Collections.Specialized; using System.Web; using System.Web.UI; using System.Security.Permissions; ////// [ DefaultEvent("ServerChange"), SupportsEventValidation, ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class HtmlInputRadioButton : HtmlInputControl, IPostBackDataHandler { private static readonly object EventServerChange = new object(); /* * Creates an intrinsic Html INPUT type=radio control. */ public HtmlInputRadioButton() : base("radio") { } /* * Checked property. */ ////// The ///class defines the methods, /// properties, and events for the HtmlInputRadio control. This class allows /// programmatic access to the HTML <input type= /// radio> /// element on the server. /// /// [ WebCategory("Default"), DefaultValue(""), DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden) ] public bool Checked { get { string s = Attributes["checked"]; return((s != null) ? (s.Equals("checked")) : false); } set { if (value) Attributes["checked"] = "checked"; else Attributes["checked"] = null; } } ////// Gets or sets a value indicating whether a radio button is /// currently selected or not. /// ////// public override string Name { get { string s = Attributes["name"]; return ((s != null) ? s : String.Empty); } set { Attributes["name"] = MapStringAttributeToString(value); } } ////// Gets the value of the HTML /// Name attribute that will be rendered to the browser. /// ////// public override string Value { get { string val = base.Value; if (val.Length != 0) return val; val = ID; if (val != null) return val; // if specific value is not provided, use the UniqueID return UniqueID; } set { base.Value = value; } } // Value that gets rendered for the Name attribute internal override string RenderedNameAttribute { get { // For radio buttons, we must make the name unique, but can't just use the // UniqueID because all buttons in a group must have the same name. So // we replace the last part of the UniqueID with the group Name. string name = base.RenderedNameAttribute; string uid = UniqueID; int lastColon = uid.LastIndexOf(IdSeparator); if (lastColon >= 0) name = uid.Substring(0, lastColon+1) + name; return name; } } [ WebCategory("Action"), WebSysDescription(SR.Control_OnServerCheckChanged) ] public event EventHandler ServerChange { add { Events.AddHandler(EventServerChange, value); } remove { Events.RemoveHandler(EventServerChange, value); } } /* * This method is invoked just prior to rendering. */ ////// Gets or sets the contents of a text box. /// ////// /// protected internal override void OnPreRender(EventArgs e) { base.OnPreRender(e); if (Page != null && !Disabled) { Page.RegisterRequiresPostBack(this); Page.RegisterEnabledControl(this); } // if no change handler, no need to save posted property if (Events[EventServerChange] == null && !Disabled) { ViewState.SetItemDirty("checked",false); } } /* * Method used to raise the OnServerChange event. */ ////// protected virtual void OnServerChange(EventArgs e) { EventHandler handler = (EventHandler)Events[EventServerChange]; if (handler != null) handler(this, e); } ////// /// protected override void RenderAttributes(HtmlTextWriter writer) { if (Page != null) { Page.ClientScript.RegisterForEventValidation(Value, RenderedNameAttribute); } writer.WriteAttribute("value", Value); Attributes.Remove("value"); base.RenderAttributes(writer); } /* * Method of IPostBackDataHandler interface to process posted data. * RadioButton determines the posted radio group state. */ ////// /// bool IPostBackDataHandler.LoadPostData(string postDataKey, NameValueCollection postCollection) { return LoadPostData(postDataKey, postCollection); } ////// /// protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection) { string postValue = postCollection[RenderedNameAttribute]; bool valueChanged = false; if ((postValue != null) && postValue.Equals(Value)) { if (Checked == false) { ValidateEvent(Value, RenderedNameAttribute); Checked = true; // only fire change event for RadioButton that is being checked valueChanged = true; } } else { if (Checked == true) { Checked = false; } } return valueChanged; } /* * Method of IPostBackDataHandler interface which is invoked whenever posted data * for a control has changed. RadioButton fires an OnServerChange event. */ ////// /// void IPostBackDataHandler.RaisePostDataChangedEvent() { RaisePostDataChangedEvent(); } ////// /// protected virtual void RaisePostDataChangedEvent() { OnServerChange(EventArgs.Empty); } } } // File provided for Reference Use Only by Microsoft Corporation (c) 2007.
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- BamlResourceDeserializer.cs
- DESCryptoServiceProvider.cs
- RoleGroup.cs
- CmsUtils.cs
- WebPartAddingEventArgs.cs
- QuaternionAnimation.cs
- SrgsNameValueTag.cs
- WebUtil.cs
- configsystem.cs
- RuntimeResourceSet.cs
- DropShadowBitmapEffect.cs
- GenericWebPart.cs
- ConfigXmlSignificantWhitespace.cs
- XsdDateTime.cs
- SymbolUsageManager.cs
- Base64Decoder.cs
- HttpCookiesSection.cs
- CorrelationInitializer.cs
- TypeBuilder.cs
- XmlTypeAttribute.cs
- WindowsTitleBar.cs
- _ScatterGatherBuffers.cs
- securitymgrsite.cs
- Monitor.cs
- ObjectViewQueryResultData.cs
- TextTreeUndoUnit.cs
- Wildcard.cs
- DataTableTypeConverter.cs
- AnnotationComponentManager.cs
- RemotingConfigParser.cs
- InfiniteIntConverter.cs
- EntityViewGenerationConstants.cs
- RelationshipDetailsRow.cs
- LocalClientSecuritySettings.cs
- Token.cs
- ListViewGroupConverter.cs
- AssemblyAttributesGoHere.cs
- TextBox.cs
- ClientSettingsStore.cs
- Exceptions.cs
- WebConfigurationHost.cs
- ImpersonationContext.cs
- EventArgs.cs
- DataGridRowAutomationPeer.cs
- XPathException.cs
- TriggerAction.cs
- CallTemplateAction.cs
- DetailsViewPageEventArgs.cs
- CombinedHttpChannel.cs
- HwndAppCommandInputProvider.cs
- XmlLangPropertyAttribute.cs
- SchemaAttDef.cs
- CurrentTimeZone.cs
- FindResponse.cs
- ReliableSessionBindingElement.cs
- BinaryObjectReader.cs
- OverrideMode.cs
- ComponentRenameEvent.cs
- ControlFilterExpression.cs
- SqlTypesSchemaImporter.cs
- SingleKeyFrameCollection.cs
- MostlySingletonList.cs
- TextWriter.cs
- SqlComparer.cs
- PolyQuadraticBezierSegment.cs
- _AutoWebProxyScriptWrapper.cs
- ImageBrush.cs
- TemplateEditingService.cs
- WriteFileContext.cs
- ListViewItemSelectionChangedEvent.cs
- SystemIcmpV4Statistics.cs
- EncoderReplacementFallback.cs
- TextContainer.cs
- FileLogRecordEnumerator.cs
- GridViewRowCollection.cs
- WebServicesSection.cs
- XamlTypeWithExplicitNamespace.cs
- uribuilder.cs
- ToolStripSplitButton.cs
- _UncName.cs
- ColorTranslator.cs
- wgx_sdk_version.cs
- AssemblyUtil.cs
- QueryResponse.cs
- DictionaryGlobals.cs
- ScriptIgnoreAttribute.cs
- RoleService.cs
- IgnorePropertiesAttribute.cs
- WebPartConnectionsCancelEventArgs.cs
- Grant.cs
- ToolStripSeparator.cs
- PatternMatchRules.cs
- HTMLTagNameToTypeMapper.cs
- SHA256Managed.cs
- ClientScriptManager.cs
- GraphicsContext.cs
- CodeTypeParameterCollection.cs
- Subset.cs
- DataTableMapping.cs
- SiteMembershipCondition.cs