Code:
/ 4.0 / 4.0 / 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. //------------------------------------------------------------------------------ // // 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
- SecurityCredentialsManager.cs
- CircleHotSpot.cs
- InputQueueChannel.cs
- DesignerVerbCollection.cs
- HtmlWindow.cs
- SmiXetterAccessMap.cs
- SystemTcpConnection.cs
- ProfileServiceManager.cs
- WebInvokeAttribute.cs
- ParentQuery.cs
- SoapProtocolReflector.cs
- ClientReliableChannelBinder.cs
- HwndPanningFeedback.cs
- ServicePointManagerElement.cs
- MbpInfo.cs
- RuntimeIdentifierPropertyAttribute.cs
- assertwrapper.cs
- ImageList.cs
- Base64WriteStateInfo.cs
- PropertyGroupDescription.cs
- LayoutTable.cs
- XmlNodeList.cs
- EventPrivateKey.cs
- AutomationPropertyInfo.cs
- XmlSchemaParticle.cs
- EntityUtil.cs
- TextSearch.cs
- MemberDomainMap.cs
- TextContainerChangedEventArgs.cs
- StrokeSerializer.cs
- WmpBitmapEncoder.cs
- EdmType.cs
- RadialGradientBrush.cs
- HttpResponse.cs
- DocumentCollection.cs
- CompilationSection.cs
- SecurityIdentifierConverter.cs
- BinaryReader.cs
- OutputCacheProfile.cs
- DrawListViewSubItemEventArgs.cs
- ReflectionHelper.cs
- ContextMenuStrip.cs
- OnOperation.cs
- EntityContainerAssociationSet.cs
- MULTI_QI.cs
- HttpHandlerAction.cs
- CompositeFontParser.cs
- ErrorRuntimeConfig.cs
- TextBoxBase.cs
- IMembershipProvider.cs
- StringAnimationBase.cs
- ChtmlTextWriter.cs
- StringUtil.cs
- WindowsUpDown.cs
- GridItem.cs
- ProtocolViolationException.cs
- VBIdentifierNameEditor.cs
- DataRecordInternal.cs
- COM2Enum.cs
- RawStylusInputCustomData.cs
- WorkflowCompensationBehavior.cs
- BindingValueChangedEventArgs.cs
- SelectionItemProviderWrapper.cs
- ManipulationLogic.cs
- MouseEventArgs.cs
- ErrorHandlingAcceptor.cs
- EmbeddedMailObject.cs
- WebPartHelpVerb.cs
- DataServiceException.cs
- MergeFilterQuery.cs
- ObjectDataSource.cs
- SymmetricAlgorithm.cs
- DataBindingExpressionBuilder.cs
- ExternalFile.cs
- If.cs
- WebEvents.cs
- MdiWindowListItemConverter.cs
- FamilyCollection.cs
- SharedPerformanceCounter.cs
- FormViewUpdateEventArgs.cs
- XmlUtf8RawTextWriter.cs
- RowVisual.cs
- BrowserCapabilitiesFactory.cs
- XsdDataContractExporter.cs
- VisualCollection.cs
- ResXResourceWriter.cs
- DbTransaction.cs
- FrameworkTextComposition.cs
- QuerySafeNavigator.cs
- TypefaceCollection.cs
- TemporaryBitmapFile.cs
- ResourceDictionaryCollection.cs
- CaseStatementProjectedSlot.cs
- SimpleRecyclingCache.cs
- SurrogateSelector.cs
- MetafileHeaderEmf.cs
- PathData.cs
- EntityDesignerUtils.cs
- WebBrowserNavigatingEventHandler.cs
- InvariantComparer.cs