HttpCapabilitiesBase 类

定义

提供对客户端浏览器功能的详细信息的访问。

public ref class HttpCapabilitiesBase
public ref class HttpCapabilitiesBase : System::Web::UI::IFilterResolutionService
public class HttpCapabilitiesBase
public class HttpCapabilitiesBase : System.Web.UI.IFilterResolutionService
type HttpCapabilitiesBase = class
type HttpCapabilitiesBase = class
    interface IFilterResolutionService
Public Class HttpCapabilitiesBase
Public Class HttpCapabilitiesBase
Implements IFilterResolutionService
继承
HttpCapabilitiesBase
派生
实现

示例

以下示例演示如何访问有关浏览器的信息。

<%@ Page Language="C#" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
System.Web.HttpBrowserCapabilities bCaps;

    void Page_Load(Object Sender, EventArgs e)
    {
        bCaps = Request.Browser;
        OutputLabel.Text = TestCaps();
    }   

    String TestCaps()
    {
        StringBuilder sb = new StringBuilder();
//</Snippet2>
//<Snippet100>
        sb.AppendLine(TestActiveXControls());
//</Snippet100>
        //<Snippet101>
        sb.AppendLine(TestAdapters());
        //</Snippet101>
        //<Snippet102>
        sb.AppendLine(TestAOL());
        //</Snippet102>
        //<Snippet103>
        sb.AppendLine(TestBackgroundSounds());
        //</Snippet103>
        //<Snippet104>
        sb.AppendLine(TestBeta());
        //</Snippet104>
        //<Snippet105>
        sb.AppendLine(TestBrowser());
        //</Snippet105>
        //<Snippet106>
        sb.AppendLine(TestBrowserID());
        //</Snippet106>
        //<Snippet107>
        sb.AppendLine(TestBrowsers());
        //</Snippet107>
        //<Snippet108>
        sb.AppendLine(TestCanCall());
        //</Snippet108>
        //<Snippet109>
        sb.AppendLine(TestCanRenderAfter());
        //</Snippet109>
        //<Snippet110>
        sb.AppendLine(TestCanRenderEmpty());
        //</Snippet110>
        //<Snippet111>
        sb.AppendLine(TestCanRenderInputSelectTogether());
        //</Snippet111>
        //<Snippet112>
        sb.AppendLine(TestCanRenderMixedSelects());
        //</Snippet112>
        //<Snippet113>
        sb.AppendLine(TestCanRenderOneventPrevTogether());
        //</Snippet113>
        //<Snippet114>
        sb.AppendLine(TestCanRenderPostBackCards());
        //</Snippet114>
        //<Snippet115>
        sb.AppendLine(TestCanRenderSetvar());
        //</Snippet115>
        //<Snippet116>
        sb.AppendLine(TestCanSendMail());
        //</Snippet116>
        //<Snippet117>
        sb.AppendLine(TestCDF());
        //</Snippet117>
        //<Snippet118>
        sb.AppendLine(TestCLRVersion());
        //</Snippet118>
        //<Snippet119>
        sb.AppendLine(TestCombineDeck());
        //</Snippet119>
        //<Snippet120>
        sb.AppendLine(TestDefaultSubmitButton());
        //</Snippet120>
        //<Snippet121>
        sb.AppendLine(TestECMAScriptVersion());
        //</Snippet121>
        //<Snippet123>
        sb.AppendLine(TestGatewayMajorVersion());
        //</Snippet123>
        //<Snippet124>
        sb.AppendLine(TestGatewayMinorVersion());
        //</Snippet124>
        //<Snippet125>
        sb.AppendLine(TestGatewayVersion());
        //</Snippet125>
        //<Snippet126>
        sb.AppendLine(TestHasBackButton());
        //</Snippet126>
        //<Snippet127>
        sb.AppendLine(TestHideRtAlignScrollBars());
        //</Snippet127>
        //<Snippet128>
        sb.AppendLine(TestInputType());
        //</Snippet128>
        //<Snippet129>
        sb.AppendLine(TestIsBrowser());
        //</Snippet129>
        //<Snippet130>
        sb.AppendLine(TestIsColor());
        //</Snippet130>
        //<Snippet131>
        sb.AppendLine(TestIsCrawler());
        //</Snippet131>
        //<Snippet132>
        sb.AppendLine(TestIsMobileDevice());
        //</Snippet132>
        //<Snippet133>
        sb.AppendLine(TestJavaScript());
        //</Snippet133>
        //<Snippet134>
        sb.AppendLine(TestJScriptVersion());
        //</Snippet134>
        //<Snippet135>
        sb.AppendLine(TestMajorVersion());
        //</Snippet135>
        //<Snippet136>
        sb.AppendLine(TestMaximumHrefLength());
        //</Snippet136>
        //<Snippet137>
        sb.AppendLine(TestMaximumRenderedPageSize());
        //</Snippet137>
        //<Snippet138>
        sb.AppendLine(TestMaximumSoftkeyLabelLength());
        //</Snippet138>
        //<Snippet139>
        sb.AppendLine(TestMinorVersion());
        //</Snippet139>
        //<Snippet140>
        sb.AppendLine(TestMinorVersionString());
        //</Snippet140>
        //<Snippet141>
        sb.AppendLine(TestMobileDeviceManufacturer());
        //</Snippet141>
        //<Snippet142>
        sb.AppendLine(TestMobileDeviceModel());
        //</Snippet142>
        //<Snippet143>
        sb.AppendLine(TestMSDomVersion());
        //</Snippet143>
        //<Snippet144>
        sb.AppendLine(TestNumberOfSoftKeys());
        //</Snippet144>
        //<Snippet145>
        sb.AppendLine(TestPlatform());
        //</Snippet145>
        //<Snippet146>
        sb.AppendLine(TestPreferredImageMime());
        //</Snippet146>
        //<Snippet147>
        sb.AppendLine(TestPreferredRenderingMime());
        //</Snippet147>
        //<Snippet148>
        sb.AppendLine(TestPreferredRenderingType());
        //</Snippet148>
        //<Snippet149>
        sb.AppendLine(TestPreferredRequestEncoding());
        //</Snippet149>
        //<Snippet150>
        sb.AppendLine(TestPreferredResponseEncoding());
        //</Snippet150>
        //<Snippet151>
        sb.AppendLine(TestRenderBreakBeforeWmlSelectAndInput());
        //</Snippet151>
        //<Snippet152>
        sb.AppendLine(TestRendersBreaksAfterHtmlLists());
        //</Snippet152>
        //<Snippet153>
        sb.AppendLine(TestRendersBreaksAfterWmlAnchor());
        //</Snippet153>
        //<Snippet154>
        sb.AppendLine(TestRendersBreaksAfterWmlInput());
        //</Snippet154>
        //<Snippet155>
        sb.AppendLine(TestRendersWmlDoAcceptsInline());
        //</Snippet155>
        //<Snippet157>
        sb.AppendLine(TestRendersWmlSelectsAsMenuCards());
        //</Snippet157>
        //<Snippet158>
        sb.AppendLine(TestRequiredMetaTagNameValue());
        //</Snippet158>
        //<Snippet159>
        sb.AppendLine(TestRequiresAttributeColonSubstitution());
        //</Snippet159>
        //<Snippet160>
        sb.AppendLine(TestRequiresContentTypeMetaTag());
        //</Snippet160>
        //<Snippet161>
        sb.AppendLine(TestRequiresControlStateInSession());
        //</Snippet161>
        //<Snippet162>
        sb.AppendLine(TestRequiresDBCSCharacter());
        //</Snippet162>
        //<Snippet163>
        sb.AppendLine(TestRequiresHtmlAdaptiveErrorReporting());
        //</Snippet163>
        //<Snippet164>
        sb.AppendLine(TestRequiresLeadingPageBreak());
        //</Snippet164>
        //<Snippet165>
        sb.AppendLine(TestRequiresNoBreakInFormatting());
        //</Snippet165>
        //<Snippet166>
        sb.AppendLine(TestRequiresOutputOptimization());
        //</Snippet166>
        //<Snippet167>
        sb.AppendLine(TestRequiresPhoneNumberAsPlainText());
        //</Snippet167>
        //<Snippet168>
        sb.AppendLine(TestRequiresSpecialViewStateEncoding());
        //</Snippet168>
        //<Snippet169>
        sb.AppendLine(TestRequiresUniqueFilePathSuffix());
        //</Snippet169>
        //<Snippet170>
        sb.AppendLine(TestRequiresUniqueHtmlCheckboxNames());
        //</Snippet170>
        //<Snippet171>
        sb.AppendLine(TestRequiresUniqueHtmlInputNames());
        //</Snippet171>
        //<Snippet172>
        sb.AppendLine(TestRequiresUrlEncodedPostfieldValues());
        //</Snippet172>
        //<Snippet173>
        sb.AppendLine(TestScreenBitDepth());
        //</Snippet173>
        //<Snippet174>
        sb.AppendLine(TestScreenCharactersHeight());
        //</Snippet174>
        //<Snippet175>
        sb.AppendLine(TestScreenCharactersWidth());
        //</Snippet175>
        //<Snippet176>
        sb.AppendLine(TestScreenPixelsHeight());
        //</Snippet176>
        //<Snippet177>
        sb.AppendLine(TestScreenPixelsWidth());
        //</Snippet177>
        //<Snippet178>
        sb.AppendLine(TestScreenAccesskeyAttribute());
        //</Snippet178>
        //<Snippet179>
        sb.AppendLine(TestSupportsBodyColor());
        //</Snippet179>
        //<Snippet180>
        sb.AppendLine(TestSupportsBold());
        //</Snippet180>
        //<Snippet181>
        sb.AppendLine(TestSupportsCacheControlMetaTag());
        //</Snippet181>
        //<Snippet182>
        sb.AppendLine(TestSupportsCallback());
        //</Snippet182>
        //<Snippet183>
        sb.AppendLine(TestSupportsCookies());
        //</Snippet183>
        //<Snippet184>
        sb.AppendLine(TestSupportsCss());
        //</Snippet184>
        //<Snippet185>
        sb.AppendLine(TestSupportsDivAlign());
        //</Snippet185>
        //<Snippet186>
        sb.AppendLine(TestSupportsDivNoWrap());
        //</Snippet186>
        //<Snippet187>
        sb.AppendLine(TestSupportsEmptyStringInCookieValue());
        //</Snippet187>
        //<Snippet188>
        sb.AppendLine(TestSupportsFontColor());
        //</Snippet188>
        //<Snippet189>
        sb.AppendLine(TestSupportsFontName());
        //</Snippet189>
        //<Snippet190>
        sb.AppendLine(TestSupportsFontSize());
        //</Snippet190>
        //<Snippet192>
        sb.AppendLine(TestSupportsFrames());
        //</Snippet192>
        //<Snippet193>
        sb.AppendLine(TestSupportsImageSubmit());
        //</Snippet193>
        //<Snippet194>
        sb.AppendLine(TestSupportsIModeSymbols());
        //</Snippet194>
        //<Snippet195>
        sb.AppendLine(TestSupportsInputIStyle());
        //</Snippet195>
        //<Snippet196>
        sb.AppendLine(TestSupportsInputMode());
        //</Snippet196>
        //<Snippet197>
        sb.AppendLine(TestSupportsItalic());
        //</Snippet197>
        //<Snippet198>
        sb.AppendLine(TestSupportsJava());
        //</Snippet198>
        //<Snippet199>
        sb.AppendLine(TestSupportsJPhoneMultiMediaAttributes());
        //</Snippet199>
        //<Snippet200>
        sb.AppendLine(TestSupportsJPhoneSymbols());
        //</Snippet200>
        //<Snippet201>
        sb.AppendLine(TestSupportsQueryStringInFormAction());
        //</Snippet201>
        //<Snippet202>
        sb.AppendLine(TestSupportsRedirectWithCookie());
        //</Snippet202>
        //<Snippet203>
        sb.AppendLine(TestSupportsSelectMultiple());
        //</Snippet203>
        //<Snippet204>
        sb.AppendLine(TestSupportsUncheck());
        //</Snippet204>
        //<Snippet205>
        sb.AppendLine(TestSupportsXmlHttp());
        //</Snippet205>
        //<Snippet206>
        sb.AppendLine(TestTables());
        //</Snippet206>
        //<Snippet207>
        sb.AppendLine(TestType());
        //</Snippet207>
        //<Snippet208>
        sb.AppendLine(TestVBScript());
        //</Snippet208>
        //<Snippet209>
        sb.AppendLine(TestVersion());
        //</Snippet209>
        //<Snippet210>
        sb.AppendLine(TestW3CDomVersion());
        //</Snippet210>
        //<Snippet211>
        sb.AppendLine(TestWin16());
        //</Snippet211>
        //<Snippet212>
        sb.AppendLine(TestWin32());
        //</Snippet212>        
//<Snippet3>
        return sb.ToString().Replace(Environment.NewLine,"<br />");
    }
//</Snippet3>
//<Snippet300>
    String TestActiveXControls() 
    {
        return String.Format("Supports ActiveX controls: {0}",
            bCaps.ActiveXControls); 
    }
//</Snippet300>

    //<Snippet301>
    String TestAdapters()
    {
        return String.Format("Adapter count: {0}", 
            bCaps.Adapters.Count);
    }
    //</Snippet301>
        
    //<Snippet302>
    String TestAOL()
    {
        return String.Format("Is an AOL browser: {0}", 
            bCaps.AOL.ToString());
    }
    //</Snippet302>

    //<Snippet303>
    String TestBackgroundSounds()
    {
        return String.Format("Supports background sounds: {0}",
            bCaps.BackgroundSounds);
    }
    //</Snippet303>
        
    //<Snippet304>
    String TestBeta()
    {
        return String.Format("Is a beta version: {0}", 
            bCaps.Beta);
    }
    //</Snippet304>
        
    //<Snippet305>
    String TestBrowser()
    {
        return String.Format("Browser type: {0}", 
            bCaps.Browser);
    }
    //</Snippet305>

    //<Snippet307>
    String TestBrowsers()
    {
        return String.Format("Number of browsers in dictionary: {0}",
            bCaps.Browsers.Count);
    }
    //</Snippet307>

    //<Snippet319>
    String TestCombineDeck()
    {
        return String.Format("Can combine forms in deck: {0}",
            bCaps.CanCombineFormsInDeck);
    }
    //</Snippet319>

    //<Snippet308>
    String TestCanCall()
    {
        return String.Format("Can initiate voice call: {0}",
            bCaps.CanInitiateVoiceCall);
    }
    //</Snippet308>

    //<Snippet309>
    String TestCanRenderAfter()
    {
        return String.Format("Can render {0}: {1}",
            "after input or select element",
            bCaps.CanRenderAfterInputOrSelectElement);
    }
    //</Snippet309>

    //<Snippet310>
    String TestCanRenderEmpty()
    {
        return String.Format("Can render empty selects: {0}",
            bCaps.CanRenderEmptySelects);
    }
    //</Snippet310>

    //<Snippet311>
    String TestCanRenderInputSelectTogether()
    {
        return String.Format("Can render {0} together: {1}",
            "input and select elements",
            bCaps.CanRenderInputAndSelectElementsTogether);
    }
    //</Snippet311>

    //<Snippet312>
    String TestCanRenderMixedSelects()
    {
        return String.Format("Can render mixed selects: {0}",
            bCaps.CanRenderMixedSelects);
    }
    //</Snippet312>

    //<Snippet313>
    String TestCanRenderOneventPrevTogether()
    {
        return String.Format("Can render {0} together: {1}",
            "OnEvent and Prev elements",
            bCaps.CanRenderOneventAndPrevElementsTogether);
    }
    //</Snippet313>

    //<Snippet314>
    String TestCanRenderPostBackCards()
    {
        return String.Format("Can render postback cards: {0}",
            bCaps.CanRenderPostBackCards);
    }
    //</Snippet314>

    //<Snippet315>
    String TestCanRenderSetvar()
    {
        return String.Format("Can render {0}: {1}",
            "setvar elements with a value of 0",
            bCaps.CanRenderSetvarZeroWithMultiSelectionList);
    }
    //</Snippet315>

    //<Snippet316>
    String TestCanSendMail()
    {
        return String.Format("Can send mail: {0}",
            bCaps.CanSendMail);
    }
    //</Snippet316>

    //<Snippet317>
    String TestCDF()
    {
        return String.Format("Supports {0}: {1}",
            "Channel Definition Format",
            bCaps.CDF.ToString());
    }
    //</Snippet317>

    //<Snippet318>
    String TestCLRVersion()
    {
        return String.Format("CLR version on client: {0}",
            bCaps.ClrVersion);
    }
    //</Snippet318>

    //<Snippet383>
    String TestSupportsCookies()
    {
        return String.Format("Supports cookies: {0}",
            bCaps.Cookies);
    }
    //</Snippet383>

    //<Snippet331>
    String TestIsCrawler()
    {
        return String.Format("Is a crawler: {0}",
            bCaps.Crawler);
    }
    //</Snippet331>
        
    //<Snippet320>
    String TestDefaultSubmitButton()
    {
        return String.Format("Submit button limit: {0}",
            bCaps.DefaultSubmitButtonLimit);
    }
    //</Snippet320>

    //<Snippet321>
    String TestECMAScriptVersion()
    {
        return String.Format("ECMA script version: {0}",
            bCaps.EcmaScriptVersion);
    }
    //</Snippet321>

    //<Snippet392>
    String TestSupportsFrames()
    {
        return String.Format("Supports frames: {0}",
            bCaps.Frames);
    }
    //</Snippet392>

    //<Snippet323>
    String TestGatewayMajorVersion()
    {
        return String.Format("Gateway major version: {0}",
            bCaps.GatewayMajorVersion.ToString());
    }
    //</Snippet323>

    //<Snippet324>
    String TestGatewayMinorVersion()
    {
        return String.Format("Gateway minor version: {0}",
            bCaps.GatewayMinorVersion.ToString());
    }
    //</Snippet324>

    //<Snippet325>
    String TestGatewayVersion()
    {
        return String.Format("Gateway version: {0}",
            bCaps.GatewayVersion.ToString());
    }
    //</Snippet325>

    //<Snippet326>
    String TestHasBackButton()
    {
        return String.Format("Has back button: {0}",
            bCaps.HasBackButton.ToString());
    }
    //</Snippet326>

    //<Snippet327>
    String TestHideRtAlignScrollBars()
    {
        return String.Format("Hide right-aligned {0}: {1}",
            "multi-select scrollbars",
            bCaps.HidesRightAlignedMultiselectScrollbars.ToString());
    }
    //</Snippet327>

    //<Snippet306>
    String TestBrowserID()
    {
        return String.Format("Browser ID: {0}",
            bCaps.Id);
    }
    //</Snippet306>

    //<Snippet328>
    String TestInputType()
    {
        return String.Format("Supported input type: {0}",
            bCaps.InputType);
    }
    //</Snippet328>

    //<Snippet329>
    String TestIsBrowser()
    {
        return String.Format("Is client a given browser: {0}",
            bCaps.IsBrowser("IE").ToString());
    }
    //</Snippet329>

    //<Snippet330>
    String TestIsColor()
    {
        return String.Format("Is color display: {0}",
            bCaps.IsColor.ToString());
    }
    //</Snippet330>

    //<Snippet332>
    String TestIsMobileDevice()
    {
        return String.Format("Is mobile device: {0}",
            bCaps.IsMobileDevice.ToString());
    }
    //</Snippet332>

    //<Snippet398>
    String TestSupportsJava()
    {
        return String.Format("Supports Java: {0}",
            bCaps.JavaApplets.ToString());
    }
    //</Snippet398>

    //<Snippet333>
    String TestJavaScript()
    {
        return String.Format("Supports JavaScript: {0}",
            bCaps.JavaScript.ToString());
    }
    //</Snippet333>

    //<Snippet334>
    String TestJScriptVersion()
    {
        return String.Format("JScript version: {0}",
            bCaps.JScriptVersion.ToString());
    }
    //</Snippet334>

    //<Snippet335>
    String TestMajorVersion()
    {
        return String.Format("Major version of browser: {0}",
            bCaps.MajorVersion.ToString());
    }
    //</Snippet335>

    //<Snippet336>
    String TestMaximumHrefLength()
    {
        return String.Format("Max. href length: {0}",
            bCaps.MaximumHrefLength.ToString());
    }
    //</Snippet336>

    //<Snippet337>
    String TestMaximumRenderedPageSize()
    {
        return String.Format("Max. rendered page size in bytes: {0}",
            bCaps.MaximumRenderedPageSize.ToString());
    }
    //</Snippet337>
        
    //<Snippet338>
    String TestMaximumSoftkeyLabelLength()
    {
        return String.Format("Max. softkey label length: {0}",
            bCaps.MaximumSoftkeyLabelLength.ToString());
    }
    //</Snippet338>
        
    //<Snippet339>
    String TestMinorVersion()
    {
        return String.Format("Minor browser version: {0}",
            bCaps.MinorVersion.ToString());
    }
    //</Snippet339>
        
    //<Snippet340>
    String TestMinorVersionString()
    {
        return String.Format("Minor browser version {0}: {1}",
            "(as string)",
            bCaps.MinorVersionString);
    }
    //</Snippet340>
        
    //<Snippet341>
    String TestMobileDeviceManufacturer()
    {
        return String.Format("Mobile device manufacturer: {0}",
            bCaps.MobileDeviceManufacturer);
    }
    //</Snippet341>

    //<Snippet342>
    String TestMobileDeviceModel()
    {
        return String.Format("Mobile device model: {0}",
            bCaps.MobileDeviceModel);
    }
    //</Snippet342>

    //<Snippet343>
    String TestMSDomVersion()
    { 
        return String.Format("MS DOM version: {0}",
            bCaps.MSDomVersion.ToString());
    }
    //</Snippet343>

    //<Snippet344>
    String TestNumberOfSoftKeys()
    {
        return String.Format("Number of soft keys: {0}",
            bCaps.NumberOfSoftkeys.ToString());
    }
    //</Snippet344>

    //<Snippet345>
    String TestPlatform()
    {
        return String.Format("Platform of client: {0}",
            bCaps.Platform);
    }
    //</Snippet345>

    //<Snippet346>
    String TestPreferredImageMime()
    {
        return String.Format("Preferred image MIME: {0}",
            bCaps.PreferredImageMime);
    }
    //</Snippet346>

    //<Snippet347>
    String TestPreferredRenderingMime()
    {
        return String.Format("Preferred rendering MIME: {0}",
            bCaps.PreferredRenderingMime);
    }
    //</Snippet347>

    //<Snippet348>
    String TestPreferredRenderingType()
    {
        return String.Format("Preferred rendering type: {0}",
            bCaps.PreferredRenderingType);
    }
    //</Snippet348>

    //<Snippet349>
    String TestPreferredRequestEncoding()
    {
        return String.Format("Preferred request encoding: {0}",
            bCaps.PreferredRequestEncoding);
    }
    //</Snippet349>

    //<Snippet350>
    String TestPreferredResponseEncoding()
    {
        return String.Format("Preferred response encoding: {0}",
            bCaps.PreferredResponseEncoding);
    }
    //</Snippet350>

    //<Snippet351>
    String TestRenderBreakBeforeWmlSelectAndInput()
    {
        return String.Format("Renders {0}: {1}",
            "break before WML select/input",
            bCaps.RendersBreakBeforeWmlSelectAndInput.ToString());
    }
    //</Snippet351>

    //<Snippet352>
    String TestRendersBreaksAfterHtmlLists()
    {
        return String.Format("Renders breaks after HTML lists: {0}",
            bCaps.RendersBreaksAfterHtmlLists);
    }
    //</Snippet352>

    //<Snippet353>
    String TestRendersBreaksAfterWmlAnchor()
    {
        return String.Format("Renders breaks after Wml anchor: {0}",
            bCaps.RendersBreaksAfterWmlAnchor);
    }
    //</Snippet353>

    //<Snippet354>
    String TestRendersBreaksAfterWmlInput()
    {
        return String.Format("Renders breaks after Wml input: {0}",
            bCaps.RendersBreaksAfterWmlInput);
    }
    //</Snippet354>

    //<Snippet355>
    String TestRendersWmlDoAcceptsInline()
    {
        return String.Format("Renders Wml do accepts inline: {0}",
            bCaps.RendersWmlDoAcceptsInline);
    }
    //</Snippet355>

    //<Snippet357>
    String TestRendersWmlSelectsAsMenuCards()
    {
        return String.Format("Renders {0}: {1}",
            "break before WML select/input",
            bCaps.RendersWmlSelectsAsMenuCards);
    }
    //</Snippet357>

    //<Snippet358>
    String TestRequiredMetaTagNameValue()
    {
        return String.Format("Required meta tag name value: {0}",
            bCaps.RequiredMetaTagNameValue);
    }
    //</Snippet358>

    //<Snippet359>
    String TestRequiresAttributeColonSubstitution()
    {
        return String.Format("Requires {0}: {1}",
            "break before WML select/input",
            bCaps.RequiresAttributeColonSubstitution);
    }
    //</Snippet359>

    //<Snippet360>
    String TestRequiresContentTypeMetaTag()
    {
        return String.Format("Requires content type meta tag: {0}",
            bCaps.RequiresContentTypeMetaTag);
    }
    //</Snippet360>

    //<Snippet361>
    String TestRequiresControlStateInSession()
    {
        return String.Format("Requires {0}: {1}",
            "control state in session",
            bCaps.RequiresControlStateInSession);
    }
    //</Snippet361>

    //<Snippet362>
    String TestRequiresDBCSCharacter()
    {
        return String.Format("Requires DBCS character: {0}",
            bCaps.RequiresDBCSCharacter);
    }
    //</Snippet362>
        
    //<Snippet363>
    String TestRequiresHtmlAdaptiveErrorReporting()
    {
        return String.Format("Requires HTML adaptive error reporting: {0}",
            bCaps.RequiresHtmlAdaptiveErrorReporting);
    }
    //</Snippet363>

    //<Snippet364>
    String TestRequiresLeadingPageBreak()
    {
        return String.Format("Requires leading page break: {0}",
            bCaps.RequiresLeadingPageBreak);
    }
    //</Snippet364>

    //<Snippet365>
    String TestRequiresNoBreakInFormatting()
    {
        return String.Format("Requires no break in formatting: {0}",
            bCaps.RequiresNoBreakInFormatting);
    }
    //</Snippet365>

    //<Snippet366>
    String TestRequiresOutputOptimization()
    {
        return String.Format("Requires output optimization: {0}",
            bCaps.RequiresOutputOptimization);
    }
    //</Snippet366>

    //<Snippet367>
    String TestRequiresPhoneNumberAsPlainText()
    {
        return String.Format("Requires phone number as text: {0}",
            bCaps.RequiresPhoneNumbersAsPlainText);
    }
    //</Snippet367>

    //<Snippet368>
    String TestRequiresSpecialViewStateEncoding()
    {
        return String.Format("Requires special viewstate encoding: {0}",
            bCaps.RequiresSpecialViewStateEncoding);
    }
    //</Snippet368>

    //<Snippet369>
    String TestRequiresUniqueFilePathSuffix()
    {
        return String.Format("Requires unique file path suffix: {0}",
            bCaps.RequiresUniqueFilePathSuffix);
    }
    //</Snippet369>

    //<Snippet370>
    String TestRequiresUniqueHtmlCheckboxNames()
    {
        return String.Format("Requires unique HTML checkbox names: {0}",
            bCaps.RequiresUniqueHtmlCheckboxNames);
    }
    //</Snippet370>

    //<Snippet371>
    String TestRequiresUniqueHtmlInputNames()
    {
        return String.Format("Requires unique HTML input names: {0}",
            bCaps.RequiresUniqueHtmlInputNames);
    }
    //</Snippet371>

    //<Snippet372>
    String TestRequiresUrlEncodedPostfieldValues()
    {
        return String.Format("Requires URL encoded postfield values: {0}",
            bCaps.RequiresUrlEncodedPostfieldValues);
    }
    //</Snippet372>

    //<Snippet373>
    String TestScreenBitDepth()
    {
        return String.Format("Screen bit depth: {0}",
            bCaps.ScreenBitDepth);
    }
    //</Snippet373>

    //<Snippet374>
    String TestScreenCharactersHeight()
    {
        return String.Format("Screen height in character lines: {0}",
            bCaps.ScreenCharactersHeight);
    }
    //</Snippet374>

    //<Snippet375>
    String TestScreenCharactersWidth()
    {
        return String.Format("Screen width in characters: {0}",
            bCaps.ScreenCharactersWidth);
    }
    //</Snippet375>

    //<Snippet376>
    String TestScreenPixelsHeight()
    {
        return String.Format("Screen height in pixels: {0}",
            bCaps.ScreenPixelsHeight);
    }
    //</Snippet376>

    //<Snippet377>
    String TestScreenPixelsWidth()
    {
        return String.Format("Screen width in pixels: {0}",
            bCaps.ScreenPixelsWidth);
    }
    //</Snippet377>

    //<Snippet378>
    String TestScreenAccesskeyAttribute()
    {
        return String.Format("Supports ACCESSKEY: {0}",
            bCaps.SupportsAccesskeyAttribute);
    }
    //</Snippet378>

    //<Snippet379>
    String TestSupportsBodyColor()
    {
        return String.Format("Supports body color: {0}",
            bCaps.SupportsBodyColor);
    }
    //</Snippet379>

    //<Snippet380>
    String TestSupportsBold()
    {
        return String.Format("Supports bold: {0}",
            bCaps.SupportsBold);
    }
    //</Snippet380>

    //<Snippet381>
    String TestSupportsCacheControlMetaTag()
    {
        return String.Format("Supports cache-control meta tag: {0}",
            bCaps.SupportsCacheControlMetaTag);
    }
    //</Snippet381>

    //<Snippet382>
    String TestSupportsCallback()
    {
        return String.Format("Supports callback: {0}",
            bCaps.SupportsCallback);
    }
    //</Snippet382>

    //<Snippet384>
    String TestSupportsCss()
    {
        return String.Format("Supports CSS: {0}",
            bCaps.SupportsCss);
    }
    //</Snippet384>

    //<Snippet385>
    String TestSupportsDivAlign()
    {
        return String.Format("Supports DIV align: {0}",
            bCaps.SupportsDivAlign);
    }
    //</Snippet385>

    //<Snippet386>
    String TestSupportsDivNoWrap()
    {
        return String.Format("Supports DIV nowrap: {0}",
            bCaps.SupportsDivNoWrap);
    }
    //</Snippet386>

    //<Snippet387>
    String TestSupportsEmptyStringInCookieValue()
    {
        return String.Format("Supports empty string in cookie value: {0}",
            bCaps.SupportsEmptyStringInCookieValue);
    }
    //</Snippet387>

    //<Snippet388>
    String TestSupportsFontColor()
    {
        return String.Format("Supports font color: {0}",
            bCaps.SupportsFontColor);
    }
    //</Snippet388>

    //<Snippet389>
    String TestSupportsFontName()
    {
        return String.Format("Supports font name: {0}",
            bCaps.SupportsFontName);
    }
    //</Snippet389>

    //<Snippet390>
    String TestSupportsFontSize()
    {
        return String.Format("Supports font size: {0}",
            bCaps.SupportsFontSize);
    }
    //</Snippet390>

    //<Snippet393>
    String TestSupportsImageSubmit()
    {
        return String.Format("Supports image submit: {0}",
            bCaps.SupportsImageSubmit);
    }
    //</Snippet393>

    //<Snippet394>
    String TestSupportsIModeSymbols()
    {
        return String.Format("Supports i-mode symbols: {0}",
            bCaps.SupportsIModeSymbols);
    }
    //</Snippet394>

    //<Snippet395>
    String TestSupportsInputIStyle()
    {
        return String.Format("Supports input istyle attribute: {0}",
            bCaps.SupportsInputIStyle);
    }
    //</Snippet395>

    //<Snippet396>
    String TestSupportsInputMode()
    {
        return String.Format("Supports input mode: {0}",
            bCaps.SupportsInputMode);
    }
    //</Snippet396>

    //<Snippet397>
    String TestSupportsItalic()
    {
        return String.Format("Supports italics: {0}",
            bCaps.SupportsItalic);
    }
    //</Snippet397>

    //<Snippet399>
    String TestSupportsJPhoneMultiMediaAttributes()
    {
        return String.Format("Supports JPhone multimedia attributes: {0}",
            bCaps.SupportsJPhoneMultiMediaAttributes);
    }
    //</Snippet399>

    //<Snippet400>
    String TestSupportsJPhoneSymbols()
    {
        return String.Format("Supports JPhone picture symbols: {0}",
            bCaps.SupportsJPhoneSymbols);
    }
    //</Snippet400>

    //<Snippet401>
    String TestSupportsQueryStringInFormAction()
    {
        return String.Format("Supports querystring in form action: {0}",
            bCaps.SupportsQueryStringInFormAction);
    }
    //</Snippet401>

    //<Snippet402>
    String TestSupportsRedirectWithCookie()
    {
        return String.Format("Supports redirect with cookie: {0}",
            bCaps.SupportsRedirectWithCookie);
    }
    //</Snippet402>

    //<Snippet403>
    String TestSupportsSelectMultiple()
    {
        return String.Format("Supports select multiple: {0}",
            bCaps.SupportsSelectMultiple);
    }
    //</Snippet403>

    //<Snippet404>
    String TestSupportsUncheck()
    {
        return String.Format("Supports uncheck: {0}",
            bCaps.SupportsUncheck);
    }
    //</Snippet404>

    //<Snippet405>
    String TestSupportsXmlHttp()
    {
        return String.Format("Supports receiving XML over HTTP: {0}",
            bCaps.SupportsXmlHttp);
    }
    //</Snippet405>

    //<Snippet406>
    String TestTables()
    {
        return String.Format("Supports tables: {0}",
            bCaps.Tables);
    }
    //</Snippet406>
    
    //<Snippet407>
    String TestType()
    {
        return String.Format("Gets the browser name/version: {0}",
            bCaps.Type);
    }
    //</Snippet407>

    //<Snippet408>
    String TestVBScript()
    {
        return String.Format("Supports VBScript: {0}",
            bCaps.VBScript);
    }
    //</Snippet408>

    //<Snippet409>
    String TestVersion()
    {
        string dVer = bCaps.MajorVersion + "." + bCaps.MinorVersion;
        if (Double.Parse(dVer) > 5.01)
        {
            return String.Format("Uplevel version: {0}",
                bCaps.Version);
        }
        else
        {
            return String.Format("Old version: {0}",
                bCaps.Version);
        }
    }
    //</Snippet409>

    //<Snippet410>
    String TestW3CDomVersion()
    {
        return String.Format("W3C DOM version: {0}",
            bCaps.W3CDomVersion);
    }
    //</Snippet410>

    //<Snippet411>
    String TestWin16()
    {
        return String.Format("Is Win16-based computer: {0}",
            bCaps.Win16);
    }
    //</Snippet411>

    //<Snippet412>
    String TestWin32()
    {
        return String.Format("Is Win32-based computer: {0}",
            bCaps.Win32);
    }
    //</Snippet412>
// <Snippet4>        
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Browser Capabilities Sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        The current browser has the following capabilities:
        <br />
        <asp:Label ID="OutputLabel" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>
<%@ Page Language="VB" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<script runat="server">
Dim bCaps As System.Web.HttpBrowserCapabilities

    Sub Page_Load(ByVal Sender As Object, ByVal e As EventArgs)
        bCaps = Request.Browser
        OutputLabel.Text = TestCaps()
    End Sub

    Function TestCaps() As String
        Dim sb As StringBuilder
        sb = New StringBuilder()
        '</Snippet2>
        '<Snippet100>
        sb.AppendLine(TestActiveXControls())
        '</Snippet100>
        '<Snippet101>
        sb.AppendLine(TestAdapters())
        '</Snippet101>
        '<Snippet102>
        sb.AppendLine(TestAOL())
        '</Snippet102>
        '<Snippet103>
        sb.AppendLine(TestBackgroundSounds())
        '</Snippet103>
        '<Snippet104>
        sb.AppendLine(TestBeta())
        '</Snippet104>
        '<Snippet105>
        sb.AppendLine(TestBrowser())
        '</Snippet105>
        '<Snippet106>
        sb.AppendLine(TestBrowserID())
        '</Snippet106>
        '<Snippet107>
        sb.AppendLine(TestBrowsers())
        '</Snippet107>
        '<Snippet108>
        sb.AppendLine(TestCanCall())
        '</Snippet108>
        '<Snippet109>
        sb.AppendLine(TestCanRenderAfter())
        '</Snippet109>
        '<Snippet110>
        sb.AppendLine(TestCanRenderEmpty())
        '</Snippet110>
        '<Snippet111>
        sb.AppendLine(TestCanRenderInputSelectTogether())
        '</Snippet111>
        '<Snippet112>
        sb.AppendLine(TestCanRenderMixedSelects())
        '</Snippet112>
        '<Snippet113>
        sb.AppendLine(TestCanRenderOneventPrevTogether())
        '</Snippet113>
        '<Snippet114>
        sb.AppendLine(TestCanRenderPostBackCards())
        '</Snippet114>
        '<Snippet115>
        sb.AppendLine(TestCanRenderSetvar())
        '</Snippet115>
        '<Snippet116>
        sb.AppendLine(TestCanSendMail())
        '</Snippet116>
        '<Snippet117>
        sb.AppendLine(TestCDF())
        '</Snippet117>
        '<Snippet118>
        sb.AppendLine(TestCLRVersion())
        '</Snippet118>
        '<Snippet119>
        sb.AppendLine(TestCombineDeck())
        '</Snippet119>
        '<Snippet120>
        sb.AppendLine(TestDefaultSubmitButton())
        '</Snippet120>
        '<Snippet121>
        sb.AppendLine(TestECMAScriptVersion())
        '</Snippet121>
        '<Snippet123>
        sb.AppendLine(TestGatewayMajorVersion())
        '</Snippet123>
        '<Snippet124>
        sb.AppendLine(TestGatewayMinorVersion())
        '</Snippet124>
        '<Snippet125>
        sb.AppendLine(TestGatewayVersion())
        '</Snippet125>
        '<Snippet126>
        sb.AppendLine(TestHasBackButton())
        '</Snippet126>
        '<Snippet127>
        sb.AppendLine(TestHideRtAlignScrollBars())
        '</Snippet127>
        '<Snippet128>
        sb.AppendLine(TestInputType())
        '</Snippet128>
        '<Snippet129>
        sb.AppendLine(TestIsBrowser())
        '</Snippet129>
        '<Snippet130>
        sb.AppendLine(TestIsColor())
        '</Snippet130>
        '<Snippet131>
        sb.AppendLine(TestIsCrawler())
        '</Snippet131>
        '<Snippet132>
        sb.AppendLine(TestIsMobileDevice())
        '</Snippet132>
        '<Snippet133>
        sb.AppendLine(TestJavaScript())
        '</Snippet133>
        '<Snippet134>
        sb.AppendLine(TestJScriptVersion())
        '</Snippet134>
        '<Snippet135>
        sb.AppendLine(TestMajorVersion())
        '</Snippet135>
        '<Snippet136>
        sb.AppendLine(TestMaximumHrefLength())
        '</Snippet136>
        '<Snippet137>
        sb.AppendLine(TestMaximumRenderedPageSize())
        '</Snippet137>
        '<Snippet138>
        sb.AppendLine(TestMaximumSoftkeyLabelLength())
        '</Snippet138>
        '<Snippet139>
        sb.AppendLine(TestMinorVersion())
        '</Snippet139>
        '<Snippet140>
        sb.AppendLine(TestMinorVersionString())
        '</Snippet140>
        '<Snippet141>
        sb.AppendLine(TestMobileDeviceManufacturer())
        '</Snippet141>
        '<Snippet142>
        sb.AppendLine(TestMobileDeviceModel())
        '</Snippet142>
        '<Snippet143>
        sb.AppendLine(TestMSDomVersion())
        '</Snippet143>
        '<Snippet144>
        sb.AppendLine(TestNumberOfSoftKeys())
        '</Snippet144>
        '<Snippet145>
        sb.AppendLine(TestPlatform())
        '</Snippet145>
        '<Snippet146>
        sb.AppendLine(TestPreferredImageMime())
        '</Snippet146>
        '<Snippet147>
        sb.AppendLine(TestPreferredRenderingMime())
        '</Snippet147>
        '<Snippet148>
        sb.AppendLine(TestPreferredRenderingType())
        '</Snippet148>
        '<Snippet149>
        sb.AppendLine(TestPreferredRequestEncoding())
        '</Snippet149>
        '<Snippet150>
        sb.AppendLine(TestPreferredResponseEncoding())
        '</Snippet150>
        '<Snippet151>
        sb.AppendLine(TestRenderBreakBeforeWmlSelectAndInput())
        '</Snippet151>
        '<Snippet152>
        sb.AppendLine(TestRendersBreaksAfterHtmlLists())
        '</Snippet152>
        '<Snippet153>
        sb.AppendLine(TestRendersBreaksAfterWmlAnchor())
        '</Snippet153>
        '<Snippet154>
        sb.AppendLine(TestRendersBreaksAfterWmlInput())
        '</Snippet154>
        '<Snippet155>
        sb.AppendLine(TestRendersWmlDoAcceptsInline())
        '</Snippet155>
        '<Snippet157>
        sb.AppendLine(TestRendersWmlSelectsAsMenuCards())
        '</Snippet157>
        '<Snippet158>
        sb.AppendLine(TestRequiredMetaTagNameValue())
        '</Snippet158>
        '<Snippet159>
        sb.AppendLine(TestRequiresAttributeColonSubstitution())
        '</Snippet159>
        '<Snippet160>
        sb.AppendLine(TestRequiresContentTypeMetaTag())
        '</Snippet160>
        '<Snippet161>
        sb.AppendLine(TestRequiresControlStateInSession())
        '</Snippet161>
        '<Snippet162>
        sb.AppendLine(TestRequiresDBCSCharacter())
        '</Snippet162>
        '<Snippet163>
        sb.AppendLine(TestRequiresHtmlAdaptiveErrorReporting())
        '</Snippet163>
        '<Snippet164>
        sb.AppendLine(TestRequiresLeadingPageBreak())
        '</Snippet164>
        '<Snippet165>
        sb.AppendLine(TestRequiresNoBreakInFormatting())
        '</Snippet165>
        '<Snippet166>
        sb.AppendLine(TestRequiresOutputOptimization())
        '</Snippet166>
        '<Snippet167>
        sb.AppendLine(TestRequiresPhoneNumberAsPlainText())
        '</Snippet167>
        '<Snippet168>
        sb.AppendLine(TestRequiresSpecialViewStateEncoding())
        '</Snippet168>
        '<Snippet169>
        sb.AppendLine(TestRequiresUniqueFilePathSuffix())
        '</Snippet169>
        '<Snippet170>
        sb.AppendLine(TestRequiresUniqueHtmlCheckboxNames())
        '</Snippet170>
        '<Snippet171>
        sb.AppendLine(TestRequiresUniqueHtmlInputNames())
        '</Snippet171>
        '<Snippet172>
        sb.AppendLine(TestRequiresUrlEncodedPostfieldValues())
        '</Snippet172>
        '<Snippet173>
        sb.AppendLine(TestScreenBitDepth())
        '</Snippet173>
        '<Snippet174>
        sb.AppendLine(TestScreenCharactersHeight())
        '</Snippet174>
        '<Snippet175>
        sb.AppendLine(TestScreenCharactersWidth())
        '</Snippet175>
        '<Snippet176>
        sb.AppendLine(TestScreenPixelsHeight())
        '</Snippet176>
        '<Snippet177>
        sb.AppendLine(TestScreenPixelsWidth())
        '</Snippet177>
        '<Snippet178>
        sb.AppendLine(TestScreenAccesskeyAttribute())
        '</Snippet178>
        '<Snippet179>
        sb.AppendLine(TestSupportsBodyColor())
        '</Snippet179>
        '<Snippet180>
        sb.AppendLine(TestSupportsBold())
        '</Snippet180>
        '<Snippet181>
        sb.AppendLine(TestSupportsCacheControlMetaTag())
        '</Snippet181>
        '<Snippet182>
        sb.AppendLine(TestSupportsCallback())
        '</Snippet182>
        '<Snippet183>
        sb.AppendLine(TestSupportsCookies())
        '</Snippet183>
        '<Snippet184>
        sb.AppendLine(TestSupportsCss())
        '</Snippet184>
        '<Snippet185>
        sb.AppendLine(TestSupportsDivAlign())
        '</Snippet185>
        '<Snippet186>
        sb.AppendLine(TestSupportsDivNoWrap())
        '</Snippet186>
        '<Snippet187>
        sb.AppendLine(TestSupportsEmptyStringInCookieValue())
        '</Snippet187>
        '<Snippet188>
        sb.AppendLine(TestSupportsFontColor())
        '</Snippet188>
        '<Snippet189>
        sb.AppendLine(TestSupportsFontName())
        '</Snippet189>
        '<Snippet190>
        sb.AppendLine(TestSupportsFontSize())
        '</Snippet190>
        '<Snippet192>
        sb.AppendLine(TestSupportsFrames())
        '</Snippet192>
        '<Snippet193>
        sb.AppendLine(TestSupportsImageSubmit())
        '</Snippet193>
        '<Snippet194>
        sb.AppendLine(TestSupportsIModeSymbols())
        '</Snippet194>
        '<Snippet195>
        sb.AppendLine(TestSupportsInputIStyle())
        '</Snippet195>
        '<Snippet196>
        sb.AppendLine(TestSupportsInputMode())
        '</Snippet196>
        '<Snippet197>
        sb.AppendLine(TestSupportsItalic())
        '</Snippet197>
        '<Snippet198>
        sb.AppendLine(TestSupportsJava())
        '</Snippet198>
        '<Snippet199>
        sb.AppendLine(TestSupportsJPhoneMultiMediaAttributes())
        '</Snippet199>
        '<Snippet200>
        sb.AppendLine(TestSupportsJPhoneSymbols())
        '</Snippet200>
        '<Snippet201>
        sb.AppendLine(TestSupportsQueryStringInFormAction())
        '</Snippet201>
        '<Snippet202>
        sb.AppendLine(TestSupportsRedirectWithCookie())
        '</Snippet202>
        '<Snippet203>
        sb.AppendLine(TestSupportsSelectMultiple())
        '</Snippet203>
        '<Snippet204>
        sb.AppendLine(TestSupportsUncheck())
        '</Snippet204>
        '<Snippet205>
        sb.AppendLine(TestSupportsXmlHttp())
        '</Snippet205>
        '<Snippet206>
        sb.AppendLine(TestTables())
        '</Snippet206>
        '<Snippet207>
        sb.AppendLine(TestType())
        '</Snippet207>
        '<Snippet208>
        sb.AppendLine(TestVBScript())
        '</Snippet208>
        '<Snippet209>
        sb.AppendLine(TestVersion())
        '</Snippet209>
        '<Snippet210>
        sb.AppendLine(TestW3CDomVersion())
        '</Snippet210>
        '<Snippet211>
        sb.AppendLine(TestWin16())
        '</Snippet211>
        '<Snippet212>
        sb.AppendLine(TestWin32())
        '</Snippet212>

        '<Snippet3>
        Return sb.ToString().Replace(Environment.NewLine, "<br />")
    End Function
    '</Snippet3>

    '<Snippet300>
    Function TestActiveXControls() As String
        Return String.Format("Supports ActiveX controls: {0}", _
            bCaps.ActiveXControls)
    End Function
    '</Snippet300>

    '<Snippet301>
    Function TestAdapters() As String
        Return String.Format("Adapter count: {0}", _
            bCaps.Adapters.Count)
    End Function
    '</Snippet301>
    
    '<Snippet302>
    Function TestAOL() As String
        Return String.Format("Is an AOL browser: {0}", _
            bCaps.AOL.ToString())
    End Function
    '</Snippet302>

    '<Snippet303>
    Function TestBackgroundSounds() As String
        Return String.Format("Supports background sounds: {0}", _
            bCaps.BackgroundSounds)
    End Function
    '</Snippet303>
    
    '<Snippet304>
    Function TestBeta() As String
        Return String.Format("Is a beta version: {0}", _
            bCaps.Beta)
    End Function
    '</Snippet304>
    
    '<Snippet305>
    Function TestBrowser() As String
        Return String.Format("Browser type: {0}", _
            bCaps.Browser)
    End Function
    '</Snippet305>

    '<Snippet307>
    Function TestBrowsers() As String
        Return String.Format("# of browsers in dictionary: {0}", _
            bCaps.Browsers.Count)
    End Function
    '</Snippet307>

    '<Snippet319>
    Function TestCombineDeck() As String
        Return String.Format("Can combine forms in deck: {0}", _
            bCaps.CanCombineFormsInDeck)
    End Function
    '</Snippet319>

    '<Snippet308>
    Function TestCanCall() As String
        Return String.Format("Can initiate voice call: {0}", _
            bCaps.CanInitiateVoiceCall)
    End Function
    '</Snippet308>

    '<Snippet309>
    Function TestCanRenderAfter() As String
        Return String.Format("Can render {0}: {1}", _
            "after input or select element", _
            bCaps.CanRenderAfterInputOrSelectElement)
    End Function
    '</Snippet309>

    '<Snippet310>
    Function TestCanRenderEmpty() As String
        Return String.Format("Can render empty selects: {0}", _
            bCaps.CanRenderEmptySelects)
    End Function
    '</Snippet310>

    '<Snippet311>
    Function TestCanRenderInputSelectTogether() As String
        Return String.Format("Can render {0} together: {1}", _
            "input and select elements", _
            bCaps.CanRenderInputAndSelectElementsTogether)
    End Function
    '</Snippet311>

    '<Snippet312>
    Function TestCanRenderMixedSelects() As String
        Return String.Format("Can render mixed selects: {0}", _
            bCaps.CanRenderMixedSelects)
    End Function
    '</Snippet312>

    '<Snippet313>
    Function TestCanRenderOneventPrevTogether() As String
        Return String.Format("Can render {0} together: {1}", _
            "OnEvent and Prev elements", _
            bCaps.CanRenderOneventAndPrevElementsTogether)
    End Function
    '</Snippet313>

    '<Snippet314>
    Function TestCanRenderPostBackCards() As String
        Return String.Format("Can render postback cards: {0}", _
            bCaps.CanRenderPostBackCards)
    End Function
    '</Snippet314>

    '<Snippet315>
    Function TestCanRenderSetvar() As String
        Return String.Format("Can render {0}: {1}", _
            "setvar elements with a value of 0", _
            bCaps.CanRenderSetvarZeroWithMultiSelectionList)
    End Function
    '</Snippet315>

    '<Snippet316>
    Function TestCanSendMail() As String
        Return String.Format("Can send mail: {0}", _
            bCaps.CanSendMail)
    End Function
    '</Snippet316>

    '<Snippet317>
    Function TestCDF() As String
        Return String.Format("Supports {0}: {1}", _
            "Channel Definition Format", _
            bCaps.CDF.ToString())
    End Function
    '</Snippet317>

    '<Snippet318>
    Function TestCLRVersion() As String
        Return String.Format("CLR version on client: {0}", _
            bCaps.ClrVersion)
    End Function
    '</Snippet318>

    '<Snippet383>
    Function TestSupportsCookies() As String
        Return String.Format("Supports cookies: {0}", _
            bCaps.Cookies)
    End Function
    '</Snippet383>

    '<Snippet331>
    Function TestIsCrawler() As String
        Return String.Format("Is a crawler: {0}", _
            bCaps.Crawler)
    End Function
    '</Snippet331>
    
    '<Snippet320>
    Function TestDefaultSubmitButton() As String
        Return String.Format("Submit button limit: {0}", _
            bCaps.DefaultSubmitButtonLimit)
    End Function
    '</Snippet320>

    '<Snippet321>
    Function TestECMAScriptVersion() As String
        Return String.Format("ECMA script version: {0}", _
            bCaps.EcmaScriptVersion)
    End Function
    '</Snippet321>

    '<Snippet392>
    Function TestSupportsFrames() As String
        Return String.Format("Supports frames: {0}", _
            bCaps.Frames)
    End Function
    '</Snippet392>

    '<Snippet323>
    Function TestGatewayMajorVersion() As String
        Return String.Format("Gateway major version: {0}", _
            bCaps.GatewayMajorVersion.ToString())
    End Function
    '</Snippet323>

    '<Snippet324>
    Function TestGatewayMinorVersion() As String
        Return String.Format("Gateway minor version: {0}", _
            bCaps.GatewayMinorVersion.ToString())
    End Function
    '</Snippet324>

    '<Snippet325>
    Function TestGatewayVersion() As String
        Return String.Format("Gateway version: {0}", _
            bCaps.GatewayVersion.ToString())
    End Function
    '</Snippet325>

    '<Snippet326>
    Function TestHasBackButton() As String
        Return String.Format("Has back button: {0}", _
            bCaps.HasBackButton.ToString())
    End Function
    '</Snippet326>

    '<Snippet327>
    Function TestHideRtAlignScrollBars() As String
        Return String.Format("Hide hide right-aligned {0}: {1}", _
            "multi-select scrollbars", _
            bCaps.HidesRightAlignedMultiselectScrollbars.ToString())
    End Function
    '</Snippet327>

    '<Snippet306>
    Function TestBrowserID() As String
        Return String.Format("Browser ID: {0}", _
            bCaps.Id)
    End Function
    '</Snippet306>

    '<Snippet328>
    Function TestInputType() As String
        Return String.Format("Supported input type: {0}", _
            bCaps.InputType)
    End Function
    '</Snippet328>

    '<Snippet329>
    Function TestIsBrowser() As String
        Return String.Format("Is client a given browser: {0}", _
            bCaps.IsBrowser("IE").ToString())
    End Function
    '</Snippet329>

    '<Snippet330>
    Function TestIsColor() As String
        Return String.Format("Is color display: {0}", _
            bCaps.IsColor.ToString())
    End Function
    '</Snippet330>

    '<Snippet332>
    Function TestIsMobileDevice() As String
        Return String.Format("Is mobile device: {0}", _
            bCaps.IsMobileDevice.ToString())
    End Function
    '</Snippet332>

    '<Snippet398>
    Function TestSupportsJava() As String
        Return String.Format("Supports Java: {0}", _
            bCaps.JavaApplets.ToString())
    End Function
    '</Snippet398>

    '<Snippet333>
    Function TestJavaScript() As String
        Return String.Format("Supports JavaScript: {0}", _
            bCaps.JavaScript.ToString())
    End Function
    '</Snippet333>

    '<Snippet334>
    Function TestJScriptVersion() As String
        Return String.Format("JScript version: {0}", _
            bCaps.JScriptVersion.ToString())
    End Function
    '</Snippet334>

    '<Snippet335>
    Function TestMajorVersion() As String
        Return String.Format("Major version of browser: {0}", _
            bCaps.MajorVersion.ToString())
    End Function
    '</Snippet335>

    '<Snippet336>
    Function TestMaximumHrefLength() As String
        Return String.Format("Max. href length: {0}", _
            bCaps.MaximumHrefLength.ToString())
    End Function
    '</Snippet336>

    '<Snippet337>
    Function TestMaximumRenderedPageSize() As String
        Return String.Format("Max. {0}: {1}", _
            "rendered page size in bytes", _
            bCaps.MaximumRenderedPageSize.ToString())
    End Function
    '</Snippet337>
    
    '<Snippet338>
    Function TestMaximumSoftkeyLabelLength() As String
        Return String.Format("Max. softkey label length: {0}", _
            bCaps.MaximumSoftkeyLabelLength.ToString())
    End Function
    '</Snippet338>
    
    '<Snippet339>
    Function TestMinorVersion() As String
        Return String.Format("Minor browser version: {0}", _
            bCaps.MinorVersion.ToString())
    End Function
    '</Snippet339>
    
    '<Snippet340>
    Function TestMinorVersionString() As String
        Return String.Format("Minor browser version {0}: {1}", _
            "(as string)", _
            bCaps.MinorVersionString)
    End Function
    '</Snippet340>
    
    '<Snippet341>
    Function TestMobileDeviceManufacturer() As String
        Return String.Format("Mobile device manufacturer: {0}", _
            bCaps.MobileDeviceManufacturer)
    End Function
    '</Snippet341>

    '<Snippet342>
    Function TestMobileDeviceModel() As String
        Return String.Format("Mobile device model: {0}", _
            bCaps.MobileDeviceModel)
    End Function
    '</Snippet342>

    '<Snippet343>
    Function TestMSDomVersion() As String
        Return String.Format("MS DOM version: {0}", _
            bCaps.MSDomVersion.ToString())
    End Function
    '</Snippet343>

    '<Snippet344>
    Function TestNumberOfSoftKeys() As String
        Return String.Format("Number of soft keys: {0}", _
            bCaps.NumberOfSoftkeys.ToString())
    End Function
    '</Snippet344>

    '<Snippet345>
    Function TestPlatform() As String
        Return String.Format("Platform of client: {0}", _
            bCaps.Platform)
    End Function
    '</Snippet345>

    '<Snippet346>
    Function TestPreferredImageMime() As String
        Return String.Format("Preferred image MIME: {0}", _
            bCaps.PreferredImageMime)
    End Function
    '</Snippet346>

    '<Snippet347>
    Function TestPreferredRenderingMime() As String
        Return String.Format("Preferred rendering MIME: {0}", _
            bCaps.PreferredRenderingMime)
    End Function
    '</Snippet347>

    '<Snippet348>
    Function TestPreferredRenderingType() As String
        Return String.Format("Preferred rendering type: {0}", _
            bCaps.PreferredRenderingType)
    End Function
    '</Snippet348>

    '<Snippet349>
    Function TestPreferredRequestEncoding() As String
        Return String.Format("Preferred request encoding: {0}", _
            bCaps.PreferredRequestEncoding)
    End Function
    '</Snippet349>

    '<Snippet350>
    Function TestPreferredResponseEncoding() As String
        Return String.Format("Preferred response encoding: {0}", _
            bCaps.PreferredResponseEncoding)
    End Function
    '</Snippet350>

    '<Snippet351>
    Function TestRenderBreakBeforeWmlSelectAndInput() As String
        Return String.Format("Renders break {0}: {1}", _
            "before WML select/input", _
            bCaps.RendersBreakBeforeWmlSelectAndInput.ToString())
    End Function
    '</Snippet351>

    '<Snippet352>
    Function TestRendersBreaksAfterHtmlLists() As String
        Return String.Format("Renders breaks {0}: {1}", _
            "after HTML lists", _
            bCaps.RendersBreaksAfterHtmlLists)
    End Function
    '</Snippet352>

    '<Snippet353>
    Function TestRendersBreaksAfterWmlAnchor() As String
        Return String.Format("Renders breaks {0}: {1}", _
            "after Wml anchor", _
            bCaps.RendersBreaksAfterWmlAnchor)
    End Function
    '</Snippet353>

    '<Snippet354>
    Function TestRendersBreaksAfterWmlInput() As String
        Return String.Format("Renders breaks after Wml input: {0}", _
            bCaps.RendersBreaksAfterWmlInput)
    End Function
    '</Snippet354>

    '<Snippet355>
    Function TestRendersWmlDoAcceptsInline() As String
        Return String.Format("Renders Wml do accepts inline: {0}", _
            bCaps.RendersWmlDoAcceptsInline)
    End Function
    '</Snippet355>

    '<Snippet357>
    Function TestRendersWmlSelectsAsMenuCards() As String
        Return String.Format("Renders Wml {0}: {1}", _
            "selects as menu cards", _
            bCaps.RendersWmlSelectsAsMenuCards)
    End Function
    '</Snippet357>

    '<Snippet358>
    Function TestRequiredMetaTagNameValue() As String
        Return String.Format("Required meta tag name value: {0}", _
            bCaps.RequiredMetaTagNameValue)
    End Function
    '</Snippet358>

    '<Snippet359>
    Function TestRequiresAttributeColonSubstitution() As String
        Return String.Format("Requires {0}: {1}", _
            "attribute colon substitution", _
            bCaps.RequiresAttributeColonSubstitution)
    End Function
    '</Snippet359>

    '<Snippet360>
    Function TestRequiresContentTypeMetaTag() As String
        Return String.Format("Requires content type meta tag: {0}", _
            bCaps.RequiresContentTypeMetaTag)
    End Function
    '</Snippet360>

    '<Snippet361>
    Function TestRequiresControlStateInSession() As String
        Return String.Format("Requires {0}: {1}", _
            "control state in session", _
            bCaps.RequiresControlStateInSession)
    End Function
    '</Snippet361>

    '<Snippet362>
    Function TestRequiresDBCSCharacter() As String
        Return String.Format("Requires DBCS character: {0}", _
            bCaps.RequiresDBCSCharacter)
    End Function
    '</Snippet362>
    
    '<Snippet363>
    Function TestRequiresHtmlAdaptiveErrorReporting() As String
        Return String.Format("Requires {0}: {1}", _
            "control state in session", _
            bCaps.RequiresHtmlAdaptiveErrorReporting)
    End Function
    '</Snippet363>

    '<Snippet364>
    Function TestRequiresLeadingPageBreak() As String
        Return String.Format("Requires leading page break: {0}", _
            bCaps.RequiresLeadingPageBreak)
    End Function
    '</Snippet364>

    '<Snippet365>
    Function TestRequiresNoBreakInFormatting() As String
        Return String.Format("Requires {0}: {1}", _
            "no break in formatting", _
            bCaps.RequiresNoBreakInFormatting)
    End Function
    '</Snippet365>

    '<Snippet366>
    Function TestRequiresOutputOptimization() As String
        Return String.Format("Requires output optimization: {0}", _
            bCaps.RequiresOutputOptimization)
    End Function
    '</Snippet366>

    '<Snippet367>
    Function TestRequiresPhoneNumberAsPlainText() As String
        Return String.Format("Requires phone number as text: {0}", _
            bCaps.RequiresPhoneNumbersAsPlainText)
    End Function
    '</Snippet367>

    '<Snippet368>
    Function TestRequiresSpecialViewStateEncoding() As String
        Return String.Format("Requires {0}: {1}", _
            "special viewstate encoding", _
            bCaps.RequiresSpecialViewStateEncoding)
    End Function
    '</Snippet368>

    '<Snippet369>
    Function TestRequiresUniqueFilePathSuffix() As String
        Return String.Format("Requires {0}: {1}", _
            "unique file path suffix", _
            bCaps.RequiresUniqueFilePathSuffix)
    End Function
    '</Snippet369>

    '<Snippet370>
    Function TestRequiresUniqueHtmlCheckboxNames() As String
        Return String.Format("Requires {0}: {1}", _
            "unique HTML checkbox names", _
            bCaps.RequiresUniqueHtmlCheckboxNames)
    End Function
    '</Snippet370>

    '<Snippet371>
    Function TestRequiresUniqueHtmlInputNames() As String
        Return String.Format("Requires {0}: {1}", _
            "unique HTML input names", _
            bCaps.RequiresUniqueHtmlInputNames)
    End Function
    '</Snippet371>

    '<Snippet372>
    Function TestRequiresUrlEncodedPostfieldValues() As String
        Return String.Format("Requires {0}: {1}", _
            "URL encoded postfield values", _
            bCaps.RequiresUrlEncodedPostfieldValues)
    End Function
    '</Snippet372>

    '<Snippet373>
    Function TestScreenBitDepth() As String
        Return String.Format("Screen bit depth: {0}", _
            bCaps.ScreenBitDepth)
    End Function
    '</Snippet373>

    '<Snippet374>
    Function TestScreenCharactersHeight() As String
        Return String.Format("Screen height {0}: {1}", _
            "in character lines", _
            bCaps.ScreenCharactersHeight)
    End Function
    '</Snippet374>

    '<Snippet375>
    Function TestScreenCharactersWidth() As String
        Return String.Format("Screen width in characters: {0}", _
            bCaps.ScreenCharactersWidth)
    End Function
    '</Snippet375>

    '<Snippet376>
    Function TestScreenPixelsHeight() As String
        Return String.Format("Screen height in pixels: {0}", _
            bCaps.ScreenPixelsHeight)
    End Function
    '</Snippet376>

    '<Snippet377>
    Function TestScreenPixelsWidth() As String
        Return String.Format("Screen width in pixels: {0}", _
            bCaps.ScreenPixelsWidth)
    End Function
    '</Snippet377>

    '<Snippet378>
    Function TestScreenAccesskeyAttribute() As String
        Return String.Format("Supports ACCESSKEY: {0}", _
            bCaps.SupportsAccesskeyAttribute)
    End Function
    '</Snippet378>

    '<Snippet379>
    Function TestSupportsBodyColor() As String
        Return String.Format("Supports body color: {0}", _
            bCaps.SupportsBodyColor)
    End Function
    '</Snippet379>

    '<Snippet380>
    Function TestSupportsBold() As String
        Return String.Format("Supports bold: {0}", _
            bCaps.SupportsBold)
    End Function
    '</Snippet380>

    '<Snippet381>
    Function TestSupportsCacheControlMetaTag() As String
        Return String.Format("Supports {0}: {1}", _
            "cache-control meta tag", _
            bCaps.SupportsCacheControlMetaTag)
    End Function
    '</Snippet381>

    '<Snippet382>
    Function TestSupportsCallback() As String
        Return String.Format("Supports callback: {0}", _
            bCaps.SupportsCallback)
    End Function
    '</Snippet382>

    '<Snippet384>
    Function TestSupportsCss() As String
        Return String.Format("Supports CSS: {0}", _
            bCaps.SupportsCss)
    End Function
    '</Snippet384>

    '<Snippet385>
    Function TestSupportsDivAlign() As String
        Return String.Format("Supports DIV align: {0}", _
            bCaps.SupportsDivAlign)
    End Function
    '</Snippet385>

    '<Snippet386>
    Function TestSupportsDivNoWrap() As String
        Return String.Format("Supports DIV nowrap: {0}", _
            bCaps.SupportsDivNoWrap)
    End Function
    '</Snippet386>

    '<Snippet387>
    Function TestSupportsEmptyStringInCookieValue() As String
        Return String.Format("Supports {0}: {1}", _
            "cache-control meta tag", _
            bCaps.SupportsEmptyStringInCookieValue)
    End Function
    '</Snippet387>

    '<Snippet388>
    Function TestSupportsFontColor() As String
        Return String.Format("Supports font color: {0}", _
            bCaps.SupportsFontColor)
    End Function
    '</Snippet388>

    '<Snippet389>
    Function TestSupportsFontName() As String
        Return String.Format("Supports font name: {0}", _
            bCaps.SupportsFontName)
    End Function
    '</Snippet389>

    '<Snippet390>
    Function TestSupportsFontSize() As String
        Return String.Format("Supports font size: {0}", _
            bCaps.SupportsFontSize)
    End Function
    '</Snippet390>

    '<Snippet393>
    Function TestSupportsImageSubmit() As String
        Return String.Format("Supports image submit: {0}", _
            bCaps.SupportsImageSubmit)
    End Function
    '</Snippet393>

    '<Snippet394>
    Function TestSupportsIModeSymbols() As String
        Return String.Format("Supports i-mode symbols: {0}", _
            bCaps.SupportsIModeSymbols)
    End Function
    '</Snippet394>

    '<Snippet395>
    Function TestSupportsInputIStyle() As String
        Return String.Format("Supports {0}: {1}", _
            "input istyle attribute", _
            bCaps.SupportsInputIStyle)
    End Function
    '</Snippet395>

    '<Snippet396>
    Function TestSupportsInputMode() As String
        Return String.Format("Supports input mode: {0}", _
            bCaps.SupportsInputMode)
    End Function
    '</Snippet396>

    '<Snippet397>
    Function TestSupportsItalic() As String
        Return String.Format("Supports italics: {0}", _
            bCaps.SupportsItalic)
    End Function
    '</Snippet397>

    '<Snippet399>
    Function TestSupportsJPhoneMultiMediaAttributes() As String
        Return String.Format("Supports {0}: {1}", _
            "JPhone multimedia attributes", _
            bCaps.SupportsJPhoneMultiMediaAttributes)
    End Function
    '</Snippet399>

    '<Snippet400>
    Function TestSupportsJPhoneSymbols() As String
        Return String.Format("Supports JPhone picture symbols: {0}", _
            bCaps.SupportsJPhoneSymbols)
    End Function
    '</Snippet400>

    '<Snippet401>
    Function TestSupportsQueryStringInFormAction() As String
        Return String.Format("Supports {0}: {1}", _
            "querystring in form action", _
            bCaps.SupportsQueryStringInFormAction)
    End Function
    '</Snippet401>

    '<Snippet402>
    Function TestSupportsRedirectWithCookie() As String
        Return String.Format("Supports redirect with cookie: {0}", _
            bCaps.SupportsRedirectWithCookie)
    End Function
    '</Snippet402>

    '<Snippet403>
    Function TestSupportsSelectMultiple() As String
        Return String.Format("Supports select multiple: {0}", _
            bCaps.SupportsSelectMultiple)
    End Function
    '</Snippet403>

    '<Snippet404>
    Function TestSupportsUncheck() As String
        Return String.Format("Supports uncheck: {0}", _
            bCaps.SupportsUncheck)
    End Function
    '</Snippet404>

    '<Snippet405>
    Function TestSupportsXmlHttp() As String
        Return String.Format("Supports {0}: {1}", _
            "receiving XML over HTTP", _
            bCaps.SupportsXmlHttp)
    End Function
    '</Snippet405>

    '<Snippet406>
    Function TestTables() As String
        Return String.Format("Supports tables: {0}", _
            bCaps.Tables)
    End Function
    '</Snippet406>

    '<Snippet407>
    Function TestType() As String

        Return String.Format("Gets the browser name/version: {0}", _
            bCaps.Type)
    End Function
    '</Snippet407>

    '<Snippet408>
    Function TestVBScript() As String
        Return String.Format("Supports VBScript: {0}", _
            bCaps.VBScript)
    End Function
    '</Snippet408>

    '<Snippet409>
    Function TestVersion() As String
        Dim dVer As String
        dVer = bCaps.MajorVersion & "." & bCaps.MinorVersion
        If (Double.Parse(dVer) > 5.01) Then
            Return String.Format("Uplevel version: {0}", _
                bCaps.Version)
        Else
            Return String.Format("Old version: {0}", _
                bCaps.Version)
        End If
    End Function
    '</Snippet409>

    '<Snippet410>
    Function TestW3CDomVersion() As String
        Return String.Format("W3C DOM version: {0}", _
            bCaps.W3CDomVersion)
    End Function
    '</Snippet410>

    '<Snippet411>
    Function TestWin16() As String
        Return String.Format("Is Win16-based computer: {0}", _
            bCaps.Win16)
    End Function
    '</Snippet411>

    '<Snippet412>
    Function TestWin32() As String
        Return String.Format("Is Win32-based computer: {0}", _
            bCaps.Win32)
    End Function
    '</Snippet412>
    ' <Snippet4>        
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
    <title>Browser Capabilities Sample</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
        The current browser has the following capabilities:
        <br />
        <asp:Label ID="OutputLabel" runat="server"></asp:Label>
    </div>
    </form>
</body>
</html>

注解

HttpCapabilitiesBase 是派生类的 HttpBrowserCapabilities 基类。 HttpCapabilitiesBase 提供大量只读属性,这些属性提供对浏览器功能字典的类型安全访问。 可以通过 ASP.NET HttpRequest.Browser 属性公开的属性访问HttpBrowserCapabilities该类Browser

构造函数

HttpCapabilitiesBase()

创建 HttpCapabilitiesBase 类的新实例。

属性

ActiveXControls

获取一个值,该值指示浏览器是否支持 ActiveX 控件。

Adapters

返回可用控件适配器的集合。

AOL

获取一个值,该值指示客户端是否是 America Online (AOL) 浏览器。

BackgroundSounds

获取一个值,该值指示浏览器是否支持使用 <bgsounds> HTML 元素播放背景声音。

Beta

获取一个值,该值指示浏览器是否为 beta 版本。

Browser

获取在 User-Agent 请求头中由浏览器发送的浏览器字符串(如果有)。

BrowserCapabilitiesProvider

获取或设置当前浏览器的 HttpCapabilitiesProvider 对象。

Browsers

获取 Capabilities 字典中浏览器的 ArrayList

CanCombineFormsInDeck

获取一个值,该值指示浏览器是否支持包含多个窗体(如多个单独的卡片)的卡片组。

CanInitiateVoiceCall

获取一个值,该值指示浏览器设备是否能够启动语音呼叫。

CanRenderAfterInputOrSelectElement

获取一个值,该值指示浏览器是否支持 WML <select><input> 元素后面的页内容。

CanRenderEmptySelects

获取一个值,该值指示浏览器是否支持空 HTML <select> 元素。

CanRenderInputAndSelectElementsTogether

获取一个值,该值指示浏览器是否支持在同一卡片上同时存在 WML INPUTSELECT 元素。

CanRenderMixedSelects

获取一个值,该值指示浏览器是否支持同时指定 <option>onpick 特性的 WML value 元素。

CanRenderOneventAndPrevElementsTogether

获取一个值,该值指示浏览器是否支持共存于同一 WML 卡片中的 WML <onevent><prev> 元素。

CanRenderPostBackCards

获取一个值,该值指示浏览器是否支持 WML 卡片用于回发。

CanRenderSetvarZeroWithMultiSelectionList

获取一个值,该值指示浏览器是否支持 value 特性为 0 的 WML <setvar> 元素。

CanSendMail

获取一个值,该值指示浏览器是否支持使用适用于显示电子地址的 HTML <mailto> 元素发送电子邮件。

Capabilities

在内部用于获得浏览器的已定义功能。

CDF

获取一个值,该值指示浏览器是否支持网络传播的频道定义格式 (CDF)。

ClrVersion

获取客户端上安装的 .NET Framework 的版本。

Cookies

获取一个值,该值指示浏览器是否支持 Cookie。

Crawler

获取一个值,该值指示浏览器是否为搜索引擎 Web 爬网程序。

DefaultSubmitButtonLimit

返回一个窗体所允许的“提交”按钮的最大个数。

EcmaScriptVersion

获取浏览器支持的 ECMAScript 的版本号。

Frames

获取一个值,该值指示浏览器是否支持 HTML 框架。

GatewayMajorVersion

获取用于访问服务器的无线网关的主版本号(如果已知)。

GatewayMinorVersion

获取用于访问服务器的无线网关的次版本号(如果已知)。

GatewayVersion

获取用于访问服务器的无线网关的版本(如果已知)。

HasBackButton

获取一个值,该值指示浏览器是否具有专用的“后退”按钮。

HidesRightAlignedMultiselectScrollbars

获取一个值,该值指示在呈现时是否遮蔽 align 特性值为 right 的 HTML <select multiple> 元素的滚动条。

HtmlTextWriter

获取或设置要使用的 HtmlTextWriter 的完全限定类名。

Id

获取在浏览器定义文件中指定的浏览器的内部标识符。

InputType

返回浏览器支持的输入类型。

IsColor

获取一个值,该值指示浏览器是否具有颜色显示。

IsMobileDevice

获取一个值,该值指示浏览器是否为已识别的移动设备。

Item[String]

获取指定浏览器功能的值。 在 C# 中,此属性是类的索引器。

JavaApplets

获取一个值,该值指示浏览器是否支持 Java。

JavaScript
已过时。

获取一个值,该值指示浏览器是否支持 JavaScript。

JScriptVersion

获取浏览器支持的 JScript 版本。

MajorVersion

获取浏览器的主(整数)版本号。

MaximumHrefLength

获取 HTML href(定位点)元素的 <a> 特性的最大长度(以字符为单位)。

MaximumRenderedPageSize

获取浏览器可显示的页的最大长度(以字节为单位)。

MaximumSoftkeyLabelLength

返回软键标签可显示的文本的最大长度。

MinorVersion

获取浏览器的次(即小数)版本号。

MinorVersionString

以字符串形式获取浏览器的次(小数)版本号。

MobileDeviceManufacturer

返回移动设备制造商的名称(如果已知)。

MobileDeviceModel

获取移动设备的型号名称(如已知)。

MSDomVersion

获取浏览器支持的 Microsoft HTML (MSHTML) 文档对象模型 (DOM) 的版本。

NumberOfSoftkeys

返回移动设备上软键的数目。

Platform

获取客户端使用的平台的名称(如果已知)。

PreferredImageMime

返回浏览器通常首选的图像内容类型的 MIME 类型。

PreferredRenderingMime

返回浏览器通常首选的内容类型的 MIME 类型。

PreferredRenderingType

获取浏览器首选的内容类型的一般名称。

PreferredRequestEncoding

获取浏览器首选的请求编码。

PreferredResponseEncoding

获取浏览器首选的响应编码。

RendersBreakBeforeWmlSelectAndInput

获取一个值,该值指示浏览器是否在 <select><input> 元素之前呈现一个换行符。

RendersBreaksAfterHtmlLists

获取一个值,该值指示浏览器是否在列表项元素之后呈现一个换行符。

RendersBreaksAfterWmlAnchor

获取一个值,该值指示浏览器是否在独立的 HTML <a>(定位点)元素之后呈现一个换行符。

RendersBreaksAfterWmlInput

获取一个值,该值指示浏览器是否在 HTML <input> 元素之后呈现一个换行符。

RendersWmlDoAcceptsInline

获取一个值,该值指示移动设备浏览器是否将基于 WML do 的窗体接受构造作为内联按钮而不是软键来呈现。

RendersWmlSelectsAsMenuCards

获取一个值,该值指示浏览器是否将 WML <select> 元素作为菜单卡而不是组合框来呈现。

RequiredMetaTagNameValue

在内部用于生成某些浏览器所需的元标记。

RequiresAttributeColonSubstitution

获取一个值,该值指示浏览器是否要求用其他字符替换元素特性值中的冒号。

RequiresContentTypeMetaTag

获取一个值,该值指示浏览器是否需要一个已指定其 <meta> 特性的 HTML content-type 元素。

RequiresControlStateInSession

获取一个值,该值指示浏览器是否要求在会话中维护控件状态。

RequiresDBCSCharacter

获取一个值,该值指示浏览器是否需要双字节字符集。

RequiresHtmlAdaptiveErrorReporting

获取一个值,该值指示浏览器是否需要非标准错误消息。

RequiresLeadingPageBreak

获取一个值,该值指示浏览器是否要求网页正文的第一个元素为 HTML <br> 元素。

RequiresNoBreakInFormatting

获取一个值,该值指示浏览器是否不支持 HTML <br> 元素进行分行格式设置。

RequiresOutputOptimization

获取一个值,该值指示浏览器是否要求页中包含一个经过大小优化的标记语言标记的窗体。

RequiresPhoneNumbersAsPlainText

获取一个值,该值指示浏览器是否支持基于纯文本的电话拨号,或是否需要特殊标记。

RequiresSpecialViewStateEncoding

获取一个值,该值指示浏览器是否要求专门对 VIEWSTATE 值进行编码。

RequiresUniqueFilePathSuffix

获取一个值,该值指示浏览器是否需要唯一的窗体-操作 URL。

RequiresUniqueHtmlCheckboxNames

获取一个值,该值指示浏览器是否需要多个 HTML <input type="checkbox"> 元素的唯一 name 特性值。

RequiresUniqueHtmlInputNames

获取一个值,该值指示浏览器是否需要多个 HTML <input> 元素的唯一 name 特性值。

RequiresUrlEncodedPostfieldValues

获取一个值,该值指示浏览器发送的回发数据是否为 UrlEncoded

ScreenBitDepth

返回显示的深度(以每像素位数为单位)。

ScreenCharactersHeight

返回显示的近似高度(以字符行为单位)。

ScreenCharactersWidth

返回显示的近似宽度(以字符为单位)。

ScreenPixelsHeight

返回显示的近似高度(以像素为单位)。

ScreenPixelsWidth

返回显示的近似宽度(以像素为单位)。

SupportsAccesskeyAttribute

获取一个值,该值指示浏览器是否支持 HTML <a>(定位点)和 <input> 元素的 ACCESSKEY 特性。

SupportsBodyColor

获取一个值,该值指示浏览器是否支持 HTML <body> 元素的 bgcolor 特性。

SupportsBold

获取一个值,该值指示浏览器是否支持 HTML <b> 元素进行粗体文本设置。

SupportsCacheControlMetaTag

获取一个值,该值指示浏览器是否支持 HTML <meta> 元素的 http-equiv 特性的 cache-control 值。

SupportsCallback

获取一个值,该值指示浏览器是否支持回叫脚本。

SupportsCss

获取一个值,该值指示浏览器是否支持级联样式表 (CSS)。

SupportsDivAlign

获取一个值,该值指示浏览器是否支持 HTML <div> 元素的 align 特性。

SupportsDivNoWrap

获取一个值,该值指示浏览器是否支持 HTML <div> 元素的 nowrap 特性。

SupportsEmptyStringInCookieValue

获取一个值,该值指示浏览器是否支持 Cookie 值中的空 (null) 字符串。

SupportsFontColor

获取一个值,该值指示浏览器是否支持 HTML <font> 元素的 color 特性。

SupportsFontName

获取一个值,该值指示浏览器是否支持 HTML <font> 元素的 name 特性。

SupportsFontSize

获取一个值,该值指示浏览器是否支持 HTML <font> 元素的 size 特性。

SupportsImageSubmit

获取一个值,该值指示浏览器是否支持使用自定义图像替换标准形式的“提交”按钮。

SupportsIModeSymbols

获取一个值,该值指示浏览器是否支持 i-mode 符号。

SupportsInputIStyle

获取一个值,该值指示浏览器是否支持 HTML <input> 元素的 istyle 特性。

SupportsInputMode

获取一个值,该值指示浏览器是否支持 HTML <input> 元素的 mode 特性。

SupportsItalic

获取一个值,该值指示浏览器是否支持 HTML <i> 元素进行斜体文本设置。

SupportsJPhoneMultiMediaAttributes

获取一个值,该值指示浏览器是否支持 J-Phone 多媒体特性。

SupportsJPhoneSymbols

获取指示浏览器是否支持特定于 J-Phone 的图片符号的值。

SupportsQueryStringInFormAction

获取一个值,该值指示浏览器是否在 HTML <form> 元素的 action 特性值中支持查询字符串。

SupportsRedirectWithCookie

获取一个值,该值指示浏览器在重定向时是否支持 Cookie。

SupportsSelectMultiple

获取一个值,该值指示浏览器是否支持 HTML <select> 元素的 multiple 特性。

SupportsUncheck

获取一个值,该值指示是否在回发数据中反映对选中的 HTML <input type=checkbox> 元素的取消选中操作。

SupportsXmlHttp

获取一个值,该值指示浏览器是否支持通过 HTTP 接收 XML。

Tables

获取一个值,该值指示浏览器是否支持 HTML <table> 元素。

TagWriter

内部使用以获取用于为浏览器写入标记的对象的类型。

Type

获取浏览器的名称和主(整数)版本号。

UseOptimizedCacheKey

在内部用于获取一个值,该值指示是否使用经过优化的缓存密钥。

VBScript

获取一个值,该值指示浏览器是否支持 Visual Basic Scripting Edition (VBScript)。

Version

以字符串形式获取浏览器的完整版本号(整数和小数)。

W3CDomVersion

获取浏览器所支持的万维网联合会 (W3C) XML 文档对象模型 (DOM) 的版本。

Win16

获取一个值,该值指示客户端是否为基于 Win16 的计算机。

Win32

获取一个值,该值指示客户端是否为基于 Win32 的计算机。

方法

AddBrowser(String)

在内部用于向浏览器的内部集合添加项,这些浏览器的功能已识别。

CreateHtmlTextWriter(TextWriter)

新建要使用的 HtmlTextWriter 的实例。

DisableOptimizedCacheKey()

内部使用以禁用优化的缓存键。

Equals(Object)

确定指定对象是否等于当前对象。

(继承自 Object)
GetClrVersions()

返回客户端上安装的 .NET Framework 公共语言运行时的所有版本。

GetConfigCapabilities(String, HttpRequest)

在内部用于返回 HttpCapabilitiesBase 的一个实例,该实例表示已生成指定的 HttpRequest 的浏览器。

GetHashCode()

作为默认哈希函数。

(继承自 Object)
GetType()

获取当前实例的 Type

(继承自 Object)
Init()

在内部用于初始化一组内部值。

IsBrowser(String)

获取一个值,该值指示客户端浏览器是否与指定的浏览器相同。

MemberwiseClone()

创建当前 Object 的浅表副本。

(继承自 Object)
ToString()

返回表示当前对象的字符串。

(继承自 Object)

显式接口实现

IFilterResolutionService.CompareFilters(String, String)

在内部用于比较筛选器。

IFilterResolutionService.EvaluateFilter(String)

在内部用于评估筛选器。

适用于