Code:
/ DotNET / DotNET / 8.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
- XmlDocumentSchema.cs
- AuthenticateEventArgs.cs
- ApplicationHost.cs
- WorkflowServiceBehavior.cs
- EtwTrace.cs
- WindowsTreeView.cs
- AudioSignalProblemOccurredEventArgs.cs
- IPPacketInformation.cs
- Sequence.cs
- DataSourceProvider.cs
- WebPartManager.cs
- XamlToRtfWriter.cs
- SQLUtility.cs
- CompilerScopeManager.cs
- InputDevice.cs
- TextLineResult.cs
- MTConfigUtil.cs
- Filter.cs
- ExceptionUtil.cs
- CodeGotoStatement.cs
- MetadataHelper.cs
- DesignerTransactionCloseEvent.cs
- TransformedBitmap.cs
- BitmapEffectRenderDataResource.cs
- TableDetailsRow.cs
- ListDictionary.cs
- AdapterDictionary.cs
- EventListener.cs
- XslTransform.cs
- MsmqIntegrationBindingCollectionElement.cs
- StreamGeometry.cs
- UnhandledExceptionEventArgs.cs
- PropertyPathWorker.cs
- SchemaElementLookUpTable.cs
- XmlSchemaAttribute.cs
- formatter.cs
- InkCanvas.cs
- Line.cs
- TimeoutValidationAttribute.cs
- ContentDisposition.cs
- CompilerState.cs
- DesignerTextWriter.cs
- BaseValidator.cs
- RegistryConfigurationProvider.cs
- XmlSchemaAppInfo.cs
- _ShellExpression.cs
- KeyValueSerializer.cs
- ArrayList.cs
- OleDbErrorCollection.cs
- SmtpClient.cs
- CompositeActivityMarkupSerializer.cs
- TextEditorTables.cs
- FormatConvertedBitmap.cs
- DynamicFilterExpression.cs
- DrawingVisualDrawingContext.cs
- DateTimeValueSerializerContext.cs
- BamlTreeUpdater.cs
- StoreAnnotationsMap.cs
- DynamicQueryStringParameter.cs
- MailSettingsSection.cs
- XmlAttributes.cs
- ObjectConverter.cs
- XmlUtilWriter.cs
- FindProgressChangedEventArgs.cs
- ParserStreamGeometryContext.cs
- DataDocumentXPathNavigator.cs
- TableDetailsCollection.cs
- IisTraceWebEventProvider.cs
- EdmProperty.cs
- XmlWriterSettings.cs
- ContextProperty.cs
- ComponentChangingEvent.cs
- WeakEventManager.cs
- DelegatingTypeDescriptionProvider.cs
- ToolStripCollectionEditor.cs
- ChooseAction.cs
- AttributeProviderAttribute.cs
- StatusStrip.cs
- EntityDesignerBuildProvider.cs
- ConnectionManagementSection.cs
- DocumentSequence.cs
- AdapterUtil.cs
- MemberPath.cs
- ReadOnlyCollection.cs
- BindingMemberInfo.cs
- Collection.cs
- BookmarkUndoUnit.cs
- InternalResources.cs
- HttpCacheVaryByContentEncodings.cs
- Mapping.cs
- TypeGeneratedEventArgs.cs
- InfoCardSchemas.cs
- FileBasedResourceGroveler.cs
- AnimationLayer.cs
- DynamicPropertyHolder.cs
- ADMembershipProvider.cs
- TextFormatterImp.cs
- XmlQualifiedName.cs
- BinaryObjectInfo.cs
- TextEndOfLine.cs