Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Adapters / HtmlPhoneCallAdapter.cs / 1305376 / HtmlPhoneCallAdapter.cs
//------------------------------------------------------------------------------
//
// Copyright (c) Microsoft Corporation. All rights reserved.
//
//-----------------------------------------------------------------------------
using System;
using System.Globalization;
using System.IO;
using System.Web;
using System.Web.UI;
using System.Web.UI.MobileControls;
using System.Drawing;
using System.Security.Permissions;
#if COMPILING_FOR_SHIPPED_SOURCE
namespace System.Web.UI.MobileControls.ShippedAdapterSource
#else
namespace System.Web.UI.MobileControls.Adapters
#endif
{
/*
* HtmlPhoneCallAdapter class.
*
* Copyright (c) 2000 Microsoft Corporation
*/
///
[AspNetHostingPermission(SecurityAction.LinkDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[AspNetHostingPermission(SecurityAction.InheritanceDemand, Level=AspNetHostingPermissionLevel.Minimal)]
[Obsolete("The System.Web.Mobile.dll assembly has been deprecated and should no longer be used. For information about how to develop ASP.NET mobile applications, see http://go.microsoft.com/fwlink/?LinkId=157231.")]
public class HtmlPhoneCallAdapter : HtmlControlAdapter
{
///
protected new PhoneCall Control
{
get
{
return (PhoneCall)base.Control;
}
}
///
public override void Render(HtmlMobileTextWriter writer)
{
writer.EnterStyle(Style);
if (Device.CanInitiateVoiceCall)
{
String text = Control.Text;
String phoneNumber = Control.PhoneNumber;
if (String.IsNullOrEmpty(text))
{
text = phoneNumber;
}
writer.WriteBeginTag("a");
writer.Write(" href=\"tel:");
foreach (char ch in phoneNumber)
{
if (ch >= '0' && ch <= '9' || ch == '#' || ch=='+')
{
writer.Write(ch);
}
}
writer.Write("\"");
AddAttributes(writer);
writer.Write(">");
writer.WriteText(text, true);
writer.WriteEndTag("a");
}
else
{
// Format the text string based on properties
String text = String.Format(CultureInfo.CurrentCulture, Control.AlternateFormat, Control.Text,
Control.PhoneNumber);
String url = Control.AlternateUrl;
// If URI specified, create a link. Otherwise, only text is displayed.
if (!String.IsNullOrEmpty(url))
{
RenderBeginLink(writer, url);
writer.WriteText(text, true);
RenderEndLink(writer);
}
else
{
writer.WriteText(text, true);
}
}
writer.ExitStyle(Style, Control.BreakAfter);
}
}
}
// 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
- WindowsStartMenu.cs
- DataGridPagerStyle.cs
- AbstractSvcMapFileLoader.cs
- ErrorFormatter.cs
- TrackingRecord.cs
- AddInDeploymentState.cs
- PlanCompiler.cs
- ComponentCommands.cs
- EdmComplexTypeAttribute.cs
- Pkcs7Recipient.cs
- Roles.cs
- User.cs
- GraphicsState.cs
- SamlAdvice.cs
- ProviderIncompatibleException.cs
- XmlTextAttribute.cs
- SecurityPolicySection.cs
- StrongNameUtility.cs
- MethodImplAttribute.cs
- TypeCodeDomSerializer.cs
- OracleParameter.cs
- SecurityKeyIdentifier.cs
- DotExpr.cs
- TreeNodeClickEventArgs.cs
- BooleanSwitch.cs
- XmlEntity.cs
- DataKeyCollection.cs
- ConsoleTraceListener.cs
- FilterableData.cs
- WindowsBrush.cs
- LabelEditEvent.cs
- VersionPair.cs
- TextRangeBase.cs
- PageCodeDomTreeGenerator.cs
- COMException.cs
- DecoderNLS.cs
- TextContainerHelper.cs
- CmsUtils.cs
- CustomTypeDescriptor.cs
- ValueTable.cs
- WebConfigurationFileMap.cs
- EventProxy.cs
- DataExpression.cs
- TdsParserStateObject.cs
- SoapEnumAttribute.cs
- FileUpload.cs
- ColumnClickEvent.cs
- CertificateElement.cs
- Baml2006KnownTypes.cs
- BasicExpressionVisitor.cs
- ElementHostAutomationPeer.cs
- ExpressionBindings.cs
- PasswordBoxAutomationPeer.cs
- ValueChangedEventManager.cs
- RemotingConfigParser.cs
- WebPartEditorCancelVerb.cs
- HtmlElement.cs
- Oci.cs
- ToolCreatedEventArgs.cs
- ElementInit.cs
- StreamDocument.cs
- CustomGrammar.cs
- ToolStripRendererSwitcher.cs
- ClickablePoint.cs
- ReadOnlyMetadataCollection.cs
- TransformerInfo.cs
- ListViewInsertedEventArgs.cs
- UpdateProgress.cs
- XPathDescendantIterator.cs
- AssemblyName.cs
- UIElementCollection.cs
- SqlNotificationRequest.cs
- JsonWriterDelegator.cs
- Icon.cs
- SingleStorage.cs
- ProjectionCamera.cs
- UserControlAutomationPeer.cs
- XPathNodeHelper.cs
- CodeTypeReferenceCollection.cs
- DataExpression.cs
- HealthMonitoringSection.cs
- XmlValidatingReaderImpl.cs
- StorageSetMapping.cs
- ContentType.cs
- DerivedKeySecurityTokenStub.cs
- TextPatternIdentifiers.cs
- TextContainerChangedEventArgs.cs
- Int64Storage.cs
- WindowsFormsHelpers.cs
- DataProviderNameConverter.cs
- VectorValueSerializer.cs
- Win32KeyboardDevice.cs
- FamilyCollection.cs
- EventWaitHandleSecurity.cs
- AuthorizationContext.cs
- UriTemplateDispatchFormatter.cs
- HandlerFactoryWrapper.cs
- ExpandableObjectConverter.cs
- HttpStaticObjectsCollectionBase.cs
- EditCommandColumn.cs