Code:
/ FX-1434 / FX-1434 / 1.0 / untmp / whidbey / REDBITS / ndp / fx / src / xsp / System / Web / UI / WebControls / LoginName.cs / 1 / LoginName.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- namespace System.Web.UI.WebControls { using System.ComponentModel; using System.Globalization; using System.Security.Permissions; using System.Security.Principal; using System.Web.UI; using System.Web; ////// Renders a Label containing the name of the current user, as defined by the FormatString property. /// Renders nothing if the current user is anonymous. /// [ Bindable(false), Designer("System.Web.UI.Design.WebControls.LoginNameDesigner," + AssemblyRef.SystemDesign), DefaultProperty("FormatString") ] [AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)] [AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)] public class LoginName : WebControl { private const string _defaultFormatString = "{0}"; ////// The format specification. {0} is replaced with the user name of the logged in user. /// [ WebCategory("Appearance"), DefaultValue(_defaultFormatString), Localizable(true), WebSysDescription(SR.LoginName_FormatString) ] public virtual string FormatString { get { object obj = ViewState["FormatString"]; return (obj == null) ? _defaultFormatString : (string) obj; } set { ViewState["FormatString"] = value; } } internal string UserName { get { if (DesignMode) { return SR.GetString(SR.LoginName_DesignModeUserName); } else { return LoginUtil.GetUserName(this); } } } protected internal override void Render(HtmlTextWriter writer) { if (!String.IsNullOrEmpty(UserName)) { base.Render(writer); } } public override void RenderBeginTag(HtmlTextWriter writer) { // Needed for adapter case to prevent empty span tags if (!String.IsNullOrEmpty(UserName)) { base.RenderBeginTag(writer); } } public override void RenderEndTag(HtmlTextWriter writer) { // Needed for adapter case to prevent empty span tags if (!String.IsNullOrEmpty(UserName)) { base.RenderEndTag(writer); } } ////// Styles would be rendered by the WebControl base class. /// protected internal override void RenderContents(HtmlTextWriter writer) { string userName = UserName; if (!String.IsNullOrEmpty(userName)) { // VSWhidbey 304890 HTMLEncode the username userName = HttpUtility.HtmlEncode(userName); string formatString = FormatString; if (formatString.Length == 0) { writer.Write(userName); } else { try { writer.Write(String.Format(CultureInfo.CurrentCulture, formatString, userName)); } catch (FormatException e) { throw new FormatException(SR.GetString(SR.LoginName_InvalidFormatString), e); } } } } } }
Link Menu
This book is available now!
Buy at Amazon US or
Buy at Amazon UK
- EventLogPermissionEntryCollection.cs
- UnconditionalPolicy.cs
- HTTPNotFoundHandler.cs
- DataServiceException.cs
- WebScriptMetadataInstanceContextProvider.cs
- SettingsPropertyCollection.cs
- TraceContextEventArgs.cs
- log.cs
- DynamicHyperLink.cs
- InputLanguage.cs
- CaseCqlBlock.cs
- GeneralTransform3DGroup.cs
- DrawingAttributeSerializer.cs
- EasingQuaternionKeyFrame.cs
- AuthorizationRule.cs
- ToolStripHighContrastRenderer.cs
- DbProviderManifest.cs
- LogEntryHeaderDeserializer.cs
- remotingproxy.cs
- PrintPreviewDialog.cs
- UiaCoreTypesApi.cs
- PropertyGeneratedEventArgs.cs
- DesignerDataTable.cs
- ActivityInfo.cs
- StandardCommands.cs
- OracleSqlParser.cs
- OverrideMode.cs
- DbException.cs
- DropDownButton.cs
- ServiceContractListItem.cs
- SqlBooleanMismatchVisitor.cs
- Ops.cs
- HttpClientProtocol.cs
- CacheOutputQuery.cs
- UnsafeNetInfoNativeMethods.cs
- ExternalFile.cs
- CompilationSection.cs
- SocketInformation.cs
- SaveFileDialog.cs
- TileModeValidation.cs
- PublisherIdentityPermission.cs
- Confirm.cs
- Image.cs
- ExceptionUtil.cs
- ReadOnlyDataSourceView.cs
- CacheOutputQuery.cs
- CompressionTracing.cs
- TemporaryBitmapFile.cs
- AnnouncementEndpointElement.cs
- Gdiplus.cs
- DocumentsTrace.cs
- Interlocked.cs
- XmlAtomicValue.cs
- OlePropertyStructs.cs
- SessionStateItemCollection.cs
- BaseServiceProvider.cs
- ExpressionBindings.cs
- XmlTypeMapping.cs
- XmlArrayItemAttributes.cs
- X509RawDataKeyIdentifierClause.cs
- ProxyHelper.cs
- NavigatingCancelEventArgs.cs
- RichTextBoxDesigner.cs
- DateTimeFormatInfoScanner.cs
- DataShape.cs
- HorizontalAlignConverter.cs
- Win32.cs
- SubqueryRules.cs
- EdgeProfileValidation.cs
- DivideByZeroException.cs
- HttpInputStream.cs
- MenuAdapter.cs
- DoubleCollection.cs
- InputChannel.cs
- TreeNodeStyleCollection.cs
- FontStyles.cs
- SynchronousChannel.cs
- SqlException.cs
- View.cs
- BoolExpression.cs
- DashStyle.cs
- RadioButtonStandardAdapter.cs
- TimerEventSubscription.cs
- SecurityHeaderTokenResolver.cs
- DeviceSpecific.cs
- IPAddressCollection.cs
- RegexCharClass.cs
- DiagnosticTrace.cs
- XmlQueryContext.cs
- HttpResponseInternalBase.cs
- PropertyGeneratedEventArgs.cs
- TileModeValidation.cs
- XmlWriterSettings.cs
- DbParameterCollectionHelper.cs
- HttpCookie.cs
- PeerMaintainer.cs
- FolderNameEditor.cs
- AttributeQuery.cs
- TreeViewImageIndexConverter.cs
- UntypedNullExpression.cs