Code:
/ Net / Net / 3.5.50727.3053 / DEVDIV / depot / DevDiv / releases / whidbey / netfxsp / 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);
}
}
}
}
}
}
// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//------------------------------------------------------------------------------
//
// 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);
}
}
}
}
}
}
// 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
- TypeTypeConverter.cs
- ObjectStateEntryDbDataRecord.cs
- QueryResults.cs
- DataGridViewCheckBoxCell.cs
- GroupAggregateExpr.cs
- DependencyPropertyKind.cs
- SignerInfo.cs
- UnaryNode.cs
- PhonemeConverter.cs
- ProcessHostFactoryHelper.cs
- Button.cs
- ActivitySurrogate.cs
- _LocalDataStore.cs
- ExpressionLink.cs
- CookielessHelper.cs
- TextWriter.cs
- WebBaseEventKeyComparer.cs
- TranslateTransform.cs
- FrameworkPropertyMetadata.cs
- SizeConverter.cs
- EdmType.cs
- HtmlInputText.cs
- BindingCompleteEventArgs.cs
- COAUTHIDENTITY.cs
- ConnectionConsumerAttribute.cs
- DrawingGroup.cs
- VirtualPathProvider.cs
- RSAPKCS1KeyExchangeFormatter.cs
- ModelPropertyDescriptor.cs
- Selector.cs
- fixedPageContentExtractor.cs
- WpfPayload.cs
- TdsEnums.cs
- GeometryGroup.cs
- AssemblySettingAttributes.cs
- EncodedStreamFactory.cs
- EntityContainerAssociationSetEnd.cs
- ProcessHost.cs
- NetworkInformationPermission.cs
- XmlSchemaValidationException.cs
- WebPartConnectVerb.cs
- __FastResourceComparer.cs
- base64Transforms.cs
- BinaryNode.cs
- ValidationSummary.cs
- PersonalizationState.cs
- ListViewAutomationPeer.cs
- ListComponentEditor.cs
- AtomicFile.cs
- ToolStripPanel.cs
- CodeSubDirectory.cs
- CapabilitiesSection.cs
- X509LogoTypeExtension.cs
- ServicePointManager.cs
- AssemblyNameUtility.cs
- ToolTip.cs
- InfoCardRSAPKCS1KeyExchangeFormatter.cs
- CustomUserNameSecurityTokenAuthenticator.cs
- WarningException.cs
- InvokeHandlers.cs
- BinaryEditor.cs
- Baml2006Reader.cs
- StickyNote.cs
- LicenseProviderAttribute.cs
- PrintController.cs
- SettingsPropertyIsReadOnlyException.cs
- SchemaLookupTable.cs
- DataRelationCollection.cs
- ServiceCredentialsSecurityTokenManager.cs
- Simplifier.cs
- EntityContainerEmitter.cs
- hresults.cs
- CollectionView.cs
- ThreadPool.cs
- WebPartConnectionsEventArgs.cs
- RegistrySecurity.cs
- AutomationAttributeInfo.cs
- ErrorHandler.cs
- WorkflowElementDialog.cs
- ClassicBorderDecorator.cs
- CookieHandler.cs
- ObjectMemberMapping.cs
- LineSegment.cs
- MultiSelectRootGridEntry.cs
- ResourceDescriptionAttribute.cs
- EntityDataSourceEntityTypeFilterItem.cs
- PtsHost.cs
- StrokeNodeEnumerator.cs
- ConditionalDesigner.cs
- DecoderNLS.cs
- TimerElapsedEvenArgs.cs
- CursorInteropHelper.cs
- QueryCacheManager.cs
- CachingHintValidation.cs
- SafeSystemMetrics.cs
- TrimSurroundingWhitespaceAttribute.cs
- CopyAttributesAction.cs
- XmlUnspecifiedAttribute.cs
- XmlDictionaryString.cs
- MessageSecurityProtocol.cs