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
- SQLString.cs
- UnauthorizedWebPart.cs
- X509RawDataKeyIdentifierClause.cs
- ListBindableAttribute.cs
- KoreanLunisolarCalendar.cs
- TransportContext.cs
- WorkItem.cs
- Command.cs
- ScriptReferenceEventArgs.cs
- BasicBrowserDialog.cs
- TextProperties.cs
- OracleBinary.cs
- XpsDigitalSignature.cs
- SingleSelectRootGridEntry.cs
- XamlPoint3DCollectionSerializer.cs
- SocketCache.cs
- ClientScriptManager.cs
- UpdateCommand.cs
- ClickablePoint.cs
- RowParagraph.cs
- SortedList.cs
- HebrewNumber.cs
- ListenDesigner.cs
- FocusChangedEventArgs.cs
- XmlCharType.cs
- CollectionConverter.cs
- DoubleUtil.cs
- FormViewInsertedEventArgs.cs
- ProvidersHelper.cs
- UnsafeNativeMethodsPenimc.cs
- MaterializeFromAtom.cs
- AddressUtility.cs
- ParameterElementCollection.cs
- WebBrowserHelper.cs
- IHttpResponseInternal.cs
- LocalizableAttribute.cs
- GregorianCalendarHelper.cs
- PageContentAsyncResult.cs
- ShaderEffect.cs
- SecuritySessionServerSettings.cs
- IIS7UserPrincipal.cs
- LinqTreeNodeEvaluator.cs
- OutputCacheEntry.cs
- ContextStaticAttribute.cs
- CacheChildrenQuery.cs
- XmlKeywords.cs
- SerializationInfo.cs
- CharEntityEncoderFallback.cs
- MetadataItemCollectionFactory.cs
- EventMappingSettings.cs
- ListItemCollection.cs
- EntityViewGenerator.cs
- TargetPerspective.cs
- DataGridViewIntLinkedList.cs
- CookielessData.cs
- DictionaryChange.cs
- LinqDataSourceHelper.cs
- CommandBindingCollection.cs
- EnumBuilder.cs
- CacheSection.cs
- HistoryEventArgs.cs
- AgileSafeNativeMemoryHandle.cs
- EdgeProfileValidation.cs
- regiisutil.cs
- TileBrush.cs
- AlphabeticalEnumConverter.cs
- AnnotationDocumentPaginator.cs
- CrossAppDomainChannel.cs
- HttpRawResponse.cs
- DataGridViewCheckBoxColumn.cs
- XsltException.cs
- ExpressionBuilder.cs
- PageSetupDialog.cs
- SingleAnimation.cs
- Page.cs
- CompositeActivityTypeDescriptorProvider.cs
- WebPartManagerDesigner.cs
- ValidationErrorCollection.cs
- HtmlInputReset.cs
- CompilerScope.Storage.cs
- CategoryGridEntry.cs
- DataGridViewHeaderCell.cs
- IPHostEntry.cs
- HttpResponseWrapper.cs
- TypeBuilder.cs
- WorkflowMarkupSerializerMapping.cs
- GreenMethods.cs
- ComponentResourceKey.cs
- SqlProfileProvider.cs
- RegexRunnerFactory.cs
- GridEntryCollection.cs
- XmlQueryOutput.cs
- PagePropertiesChangingEventArgs.cs
- TcpAppDomainProtocolHandler.cs
- DataRecordObjectView.cs
- StringToken.cs
- HttpModuleAction.cs
- InputReportEventArgs.cs
- HtmlInputReset.cs
- TextureBrush.cs