Code:
/ 4.0 / 4.0 / untmp / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / MIT / System / Web / UI / MobileControls / Adapters / XhtmlAdapters / XhtmlBasicPhoneCallAdapter.cs / 1305376 / XhtmlBasicPhoneCallAdapter.cs
//------------------------------------------------------------------------------ //// Copyright (c) Microsoft Corporation. All rights reserved. // //----------------------------------------------------------------------------- using System; using System.Globalization; using System.Security.Permissions; using System.Web.Mobile; using System.Web.UI.MobileControls; using System.Web.UI.MobileControls.Adapters; #if COMPILING_FOR_SHIPPED_SOURCE namespace System.Web.UI.MobileControls.ShippedAdapterSource.XhtmlAdapters #else namespace System.Web.UI.MobileControls.Adapters.XhtmlAdapters #endif { ///[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 XhtmlPhoneCallAdapter : XhtmlControlAdapter { /// protected new PhoneCall Control { get { return base.Control as PhoneCall; } } /// public override void Render(XhtmlMobileTextWriter writer) { ConditionalClearPendingBreak(writer); Style style = Style; StyleFilter filter = writer.CurrentStyleClass.GetFilter(style); if ((filter & XhtmlConstants.Layout) != 0) { ConditionalEnterLayout(writer, style); } if (Device.CanInitiateVoiceCall) { String text = Control.Text; String phoneNumber = Control.PhoneNumber; if (text == null || text.Length == 0) { text = phoneNumber; } writer.WriteBeginTag("a"); if ((String)Device["supportsWtai"] == "true") { writer.Write(" href=\"wtai://wp/mc;"); } else { writer.Write(" href=\"tel:"); } foreach (char ch in phoneNumber) { if (ch >= '0' && ch <= '9' || ch == '#' || ch == '+') { writer.Write(ch); } } writer.Write("\""); ConditionalRenderCustomAttribute(writer, XhtmlConstants.AccessKeyCustomAttribute); String cssClass = GetCustomAttributeValue(XhtmlConstants.CssClassCustomAttribute); if (CssLocation != StyleSheetLocation.PhysicalFile) { String className = writer.GetCssFormatClassName(style); if (className != null) { writer.WriteAttribute ("class", className); } } else if (cssClass != null && cssClass.Length > 0) { writer.WriteAttribute ("class", cssClass, true /* encode */); } writer.Write(">"); writer.WriteEncodedText(text); writer.WriteEndTag("a"); ConditionalSetPendingBreakAfterInline(writer); } 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 (url != null && url.Length > 0) { String cssClass = GetCustomAttributeValue(XhtmlConstants.CssClassCustomAttribute); String accessKey = GetCustomAttributeValue(XhtmlConstants.AccessKeyCustomAttribute); RenderBeginLink(writer, url, accessKey, style, cssClass); writer.WriteEncodedText(text); RenderEndLink(writer); ConditionalSetPendingBreakAfterInline(writer); } else { writer.WritePendingBreak(); ConditionalEnterFormat(writer, style); ConditionalRenderOpeningSpanElement(writer); writer.WriteEncodedText(text); ConditionalRenderClosingSpanElement(writer); ConditionalExitFormat(writer, style); ConditionalSetPendingBreak(writer); } } if ((filter & XhtmlConstants.Layout) != 0) { ConditionalExitLayout(writer, style); } } } } // 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
- ProfessionalColors.cs
- XmlIgnoreAttribute.cs
- DefaultProxySection.cs
- ServiceRouteHandler.cs
- SimpleApplicationHost.cs
- PageScaling.cs
- ParsedAttributeCollection.cs
- MailMessageEventArgs.cs
- FieldBuilder.cs
- CapabilitiesPattern.cs
- querybuilder.cs
- ResXDataNode.cs
- TextSelectionHelper.cs
- QueueProcessor.cs
- VerificationAttribute.cs
- ModifiableIteratorCollection.cs
- GlyphRunDrawing.cs
- EpmHelper.cs
- WindowsListViewItemStartMenu.cs
- Stroke2.cs
- ZipIOCentralDirectoryBlock.cs
- Compress.cs
- Misc.cs
- Typography.cs
- MultiTouchSystemGestureLogic.cs
- XmlQueryTypeFactory.cs
- PerspectiveCamera.cs
- NonBatchDirectoryCompiler.cs
- UrlUtility.cs
- NonParentingControl.cs
- TargetInvocationException.cs
- DiscoveryClientDocuments.cs
- FieldValue.cs
- StyleSheet.cs
- HebrewNumber.cs
- UpDownBase.cs
- StorageComplexTypeMapping.cs
- DynamicControlParameter.cs
- HMACSHA384.cs
- TargetException.cs
- EditorZoneBase.cs
- IPAddressCollection.cs
- PenThread.cs
- AuthenticatedStream.cs
- CredentialCache.cs
- FieldToken.cs
- FontCollection.cs
- ClientScriptManagerWrapper.cs
- PaperSize.cs
- Dynamic.cs
- ColumnClickEvent.cs
- XmlArrayItemAttribute.cs
- MSAANativeProvider.cs
- ToolStripItemDataObject.cs
- Thumb.cs
- DataPagerFieldCommandEventArgs.cs
- TrustSection.cs
- UserInitiatedNavigationPermission.cs
- SemanticResolver.cs
- GetRecipientRequest.cs
- SQLRoleProvider.cs
- HtmlInputPassword.cs
- HotSpot.cs
- LongMinMaxAggregationOperator.cs
- BitmapEffectGeneralTransform.cs
- ElementHostAutomationPeer.cs
- SystemTcpConnection.cs
- ScrollViewer.cs
- TextWriterEngine.cs
- MailWebEventProvider.cs
- XMLSyntaxException.cs
- EndpointDiscoveryMetadata11.cs
- ErrorWebPart.cs
- SoapFault.cs
- OverrideMode.cs
- StrokeCollection.cs
- HttpApplication.cs
- CalendarButtonAutomationPeer.cs
- SynchronizationHandlesCodeDomSerializer.cs
- NetworkInformationException.cs
- StringTraceRecord.cs
- PartialTrustVisibleAssembliesSection.cs
- ComponentRenameEvent.cs
- PrtTicket_Public.cs
- XmlRawWriter.cs
- MobileCapabilities.cs
- MbpInfo.cs
- TreeNodeBindingDepthConverter.cs
- PasswordTextNavigator.cs
- AssemblyFilter.cs
- NoClickablePointException.cs
- UriScheme.cs
- PassportAuthentication.cs
- DateTimeFormatInfo.cs
- OdbcDataAdapter.cs
- SessionState.cs
- QuaternionIndependentAnimationStorage.cs
- DbExpressionVisitor_TResultType.cs
- entitydatasourceentitysetnameconverter.cs
- DesignerTransaction.cs