Code:
/ FXUpdate3074 / FXUpdate3074 / 1.1 / untmp / whidbey / QFE / ndp / fx / src / xsp / System / Web / UI / HtmlControls / HtmlInputCheckBox.cs / 2 / HtmlInputCheckBox.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
/*
* HtmlInputCheckBox.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.Globalization;
using System.Web;
using System.Web.UI;
using System.Security.Permissions;
///
///
/// The class defines the methods,
/// properties, and events for the HtmlInputCheckBox control. This class allows
/// programmatic access to the HTML <input type=
/// checkbox>
/// element on the server.
///
///
[
DefaultEvent("ServerChange"),
SupportsEventValidation,
]
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
public class HtmlInputCheckBox : HtmlInputControl, IPostBackDataHandler {
private static readonly object EventServerChange = new object();
/*
* Creates an intrinsic Html INPUT type=checkbox control.
*/
///
/// Initializes a new instance of a class.
///
public HtmlInputCheckBox() : base("checkbox") {
}
/*
* Checked property.
*/
///
/// Gets or sets a value indicating whether the checkbox is
/// currently selected.
///
[
WebCategory("Default"),
DefaultValue(""),
DesignerSerializationVisibility(DesignerSerializationVisibility.Hidden),
TypeConverter(typeof(MinimizableAttributeTypeConverter))
]
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;
}
}
/*
* Adds an event handler for the OnServerChange event.
* value: New handler to install for this event.
*/
///
/// Occurs when
///
[
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.
*/
///
///
///
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 unless
// we are disabled
if (Events[EventServerChange] == null && !Disabled) {
ViewState.SetItemDirty("checked",false);
}
}
/*
* Method used to raise the OnServerChange event.
*/
///
/// [To be supplied.]
///
protected virtual void OnServerChange(EventArgs e) {
// invoke delegates AFTER binding
EventHandler handler = (EventHandler)Events[EventServerChange];
if (handler != null) handler(this, e);
}
/*
* Method of IPostBackDataHandler interface to process posted data.
* Checkbox determines the posted Checked state.
*/
///
bool IPostBackDataHandler.LoadPostData(string postDataKey, NameValueCollection postCollection) {
return LoadPostData(postDataKey, postCollection);
}
///
protected virtual bool LoadPostData(string postDataKey, NameValueCollection postCollection) {
string post = postCollection[postDataKey];
bool newValue = !String.IsNullOrEmpty(post);
bool valueChanged = (newValue != Checked);
Checked = newValue;
if (newValue) {
ValidateEvent(postDataKey);
}
return valueChanged;
}
protected override void RenderAttributes(HtmlTextWriter writer) {
base.RenderAttributes(writer);
if (Page != null) {
Page.ClientScript.RegisterForEventValidation(RenderedNameAttribute);
}
}
/*
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
* 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.
Link Menu

This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- ProfileParameter.cs
- VisualStateChangedEventArgs.cs
- Assembly.cs
- AnnotationService.cs
- DataGridDetailsPresenterAutomationPeer.cs
- SeekStoryboard.cs
- Expander.cs
- HealthMonitoringSectionHelper.cs
- ClusterSafeNativeMethods.cs
- DecimalKeyFrameCollection.cs
- TransactionManagerProxy.cs
- XhtmlBasicObjectListAdapter.cs
- CodeEventReferenceExpression.cs
- FontSizeConverter.cs
- SoapReflectionImporter.cs
- ServiceHostingEnvironment.cs
- MulticastDelegate.cs
- DataRecordInfo.cs
- ScrollChrome.cs
- ScrollBar.cs
- WebReferencesBuildProvider.cs
- BorderGapMaskConverter.cs
- NeutralResourcesLanguageAttribute.cs
- CompositeFontFamily.cs
- DocumentXmlWriter.cs
- SqlVersion.cs
- HostingEnvironmentSection.cs
- configsystem.cs
- BitSet.cs
- GridView.cs
- AppDomainProtocolHandler.cs
- AssertValidation.cs
- PersonalizationProviderCollection.cs
- Rectangle.cs
- EntityModelBuildProvider.cs
- SdlChannelSink.cs
- Application.cs
- ZipFileInfoCollection.cs
- StateChangeEvent.cs
- AssemblyNameProxy.cs
- SerTrace.cs
- SimpleTextLine.cs
- IteratorDescriptor.cs
- CodeLabeledStatement.cs
- StringOutput.cs
- Enlistment.cs
- DataView.cs
- TypeElement.cs
- infer.cs
- AutoGeneratedFieldProperties.cs
- ContextMenuStripGroupCollection.cs
- CompositeScriptReferenceEventArgs.cs
- XmlEncoding.cs
- LogicalMethodInfo.cs
- Rect3DValueSerializer.cs
- UIPermission.cs
- StylusTouchDevice.cs
- SocketElement.cs
- BitmapInitialize.cs
- SqlErrorCollection.cs
- InternalsVisibleToAttribute.cs
- Accessible.cs
- XmlNode.cs
- JsonObjectDataContract.cs
- AppDomain.cs
- CatalogPartChrome.cs
- LiteralTextContainerControlBuilder.cs
- ScriptControlManager.cs
- X509WindowsSecurityToken.cs
- PerfCounters.cs
- SecurityKeyIdentifier.cs
- Utils.cs
- ParameterElement.cs
- SubstitutionList.cs
- ConfigXmlDocument.cs
- ZoomPercentageConverter.cs
- graph.cs
- EntityParameterCollection.cs
- DocumentGridPage.cs
- documentsequencetextpointer.cs
- CanonicalXml.cs
- mactripleDES.cs
- MenuAdapter.cs
- InheritanceContextHelper.cs
- CollectionConverter.cs
- altserialization.cs
- StateMachineWorkflowInstance.cs
- AspProxy.cs
- OracleMonthSpan.cs
- XslTransformFileEditor.cs
- IPAddress.cs
- PackageDigitalSignature.cs
- WizardForm.cs
- Invariant.cs
- RuntimeWrappedException.cs
- WebBrowser.cs
- ZipIOBlockManager.cs
- RelationshipFixer.cs
- AssociatedControlConverter.cs
- APCustomTypeDescriptor.cs