Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / xsp / System / Web / UI / WebControls / LoginName.cs / 1305376 / LoginName.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
namespace System.Web.UI.WebControls {
using System.ComponentModel;
using System.Globalization;
using System.Web;
using System.Web.UI;
using System.Web.Util;
///
/// 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")
]
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;
}
}
public override bool SupportsDisabledAttribute {
get {
return RenderingCompatibility < VersionUtil.Framework40;
}
}
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);
}
}
}
}
}
}
// 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
- recordstatescratchpad.cs
- RtfToXamlLexer.cs
- FillBehavior.cs
- XmlSigningNodeWriter.cs
- TemplateControlParser.cs
- NonVisualControlAttribute.cs
- MetadataArtifactLoader.cs
- RotateTransform3D.cs
- SubclassTypeValidator.cs
- TrustManagerMoreInformation.cs
- BasicHttpBindingCollectionElement.cs
- Transform3D.cs
- PersistenceIOParticipant.cs
- CommandManager.cs
- NetworkStream.cs
- HyperlinkAutomationPeer.cs
- DataServiceClientException.cs
- ObjectNavigationPropertyMapping.cs
- UrlRoutingModule.cs
- SqlDataSourceQuery.cs
- CreateUserWizardStep.cs
- PagesSection.cs
- DelegateBodyWriter.cs
- DataGridTextBox.cs
- EventData.cs
- XmlAttributeCollection.cs
- InternalPermissions.cs
- InvokeWebService.cs
- WCFModelStrings.Designer.cs
- FloaterBaseParaClient.cs
- SourceFilter.cs
- LassoSelectionBehavior.cs
- WorkflowRuntimeSection.cs
- CollectionViewGroup.cs
- Html32TextWriter.cs
- MissingSatelliteAssemblyException.cs
- TextContainerHelper.cs
- QueryCursorEventArgs.cs
- WebPartsSection.cs
- FormatStringEditor.cs
- DataGridSortCommandEventArgs.cs
- EditorZoneBase.cs
- EncoderParameter.cs
- DataGridViewRowErrorTextNeededEventArgs.cs
- AnnotationComponentManager.cs
- OletxEnlistment.cs
- PageThemeBuildProvider.cs
- Empty.cs
- DataViewSettingCollection.cs
- XmlAtomicValue.cs
- Executor.cs
- CodeSpit.cs
- safex509handles.cs
- PointHitTestResult.cs
- LocalFileSettingsProvider.cs
- ElementAtQueryOperator.cs
- TextTrailingWordEllipsis.cs
- FixedSOMTableCell.cs
- DataGridViewCellErrorTextNeededEventArgs.cs
- ActivationServices.cs
- RequestQueue.cs
- ActivityStatusChangeEventArgs.cs
- Parsers.cs
- WebPartPersonalization.cs
- CompositeCollection.cs
- DynamicDocumentPaginator.cs
- ToolStripSeparatorRenderEventArgs.cs
- QuaternionAnimation.cs
- DictionaryCustomTypeDescriptor.cs
- PtsHost.cs
- SchemaManager.cs
- GenericEnumerator.cs
- DecimalConverter.cs
- SchemaEntity.cs
- ListCollectionView.cs
- RepeaterCommandEventArgs.cs
- ClipboardProcessor.cs
- ConstraintStruct.cs
- PolicyLevel.cs
- ObjectDataProvider.cs
- HTMLTagNameToTypeMapper.cs
- WebPartZoneCollection.cs
- TreePrinter.cs
- RecordManager.cs
- XmlIterators.cs
- MdiWindowListItemConverter.cs
- TCPClient.cs
- FieldAccessException.cs
- Floater.cs
- SystemEvents.cs
- HostingEnvironment.cs
- AssociatedControlConverter.cs
- FillBehavior.cs
- ReliableReplySessionChannel.cs
- XmlSchemaAny.cs
- DataControlFieldCollection.cs
- DataControlImageButton.cs
- XmlSchemaDocumentation.cs
- EncodingTable.cs
- TailCallAnalyzer.cs