zoukankan      html  css  js  c++  java
  • 浏览器信息

      1 using System;
      2 using System.Net;
      3 using System.Windows;
      4 using System.Windows.Browser;
      5 using System.Windows.Controls;
      6 using System.Windows.Documents;
      7 using System.Windows.Ink;
      8 using System.Windows.Input;
      9 using System.Windows.Media;
     10 using System.Windows.Media.Animation;
     11 using System.Windows.Shapes;
     12 
     13 namespace TWSL.Common
     14 {
     15     /// <summary>  
     16     /// 浏览器屏幕信息类  
     17     /// </summary>  
     18     public class Browser
     19     {
     20         /// <summary>     
     21         /// During static instantiation, only the Netscape flag is checked     
     22         /// </summary>     
     23         static Browser()
     24         {
     25             _isNavigator = HtmlPage.BrowserInformation.Name.Contains("Netscape");
     26         }
     27 
     28         /// <summary>     
     29         /// Flag indicating Navigator/Firefox/Safari or Internet Explorer     
     30         /// </summary>     
     31         private static bool _isNavigator;
     32 
     33         /// <summary>     
     34         /// Provides quick access to the window.screen ScriptObject     
     35         /// </summary>     
     36         private static ScriptObject Screen
     37         {
     38             get
     39             {
     40                 ScriptObject screen = (ScriptObject)HtmlPage.Window.GetProperty("screen");
     41 
     42                 if (screen == null)
     43                 {
     44                     throw new InvalidOperationException();
     45                 }
     46 
     47                 return screen;
     48             }
     49         }
     50 
     51         /// <summary>     
     52         /// Gets the window object's client width     
     53         /// </summary>     
     54         public static double ClientWidth
     55         {
     56             get
     57             {
     58                 return _isNavigator ? (double)HtmlPage.Window.GetProperty("innerWidth")
     59                     : (double)HtmlPage.Document.Body.GetProperty("clientWidth");
     60             }
     61 
     62         }
     63 
     64         /// <summary>     
     65         /// Gets the window object's client height     
     66         /// </summary>     
     67         public static double ClientHeight
     68         {
     69             get
     70             {
     71                 return _isNavigator ? (double)HtmlPage.Window.GetProperty("innerHeight")
     72                     : (double)HtmlPage.Document.Body.GetProperty("clientHeight");
     73             }
     74         }
     75 
     76         /// <summary>     
     77         /// Gets the current horizontal scrolling offset     
     78         /// </summary>     
     79         public static double ScrollLeft
     80         {
     81             get
     82             {
     83                 return _isNavigator ? (double)HtmlPage.Window.GetProperty("pageXOffset")
     84                     : (double)HtmlPage.Document.Body.GetProperty("scrollLeft");
     85             }
     86         }
     87 
     88         /// <summary>     
     89         /// Gets the current vertical scrolling offset     
     90         /// </summary>     
     91         public static double ScrollTop
     92         {
     93             get
     94             {
     95                 return _isNavigator ? (double)HtmlPage.Window.GetProperty("pageYOffset")
     96                     : (double)HtmlPage.Document.Body.GetProperty("scrollHeight");
     97             }
     98         }
     99 
    100         /// <summary>     
    101         /// Gets the width of the entire display     
    102         /// </summary>     
    103         public static double ScreenWidth
    104         {
    105             get
    106             {
    107                 return (double)Screen.GetProperty("width");
    108             }
    109         }
    110 
    111         /// <summary>     
    112         /// Gets the height of the entire display     
    113         /// </summary>     
    114         public static double ScreenHeight
    115         {
    116             get
    117             {
    118                 return (double)Screen.GetProperty("height");
    119             }
    120         }
    121 
    122         /// <summary>     
    123         /// Gets the width of the available screen real estate, excluding the dock     
    124         /// or task bar     
    125         /// </summary>     
    126         public static double AvailableScreenWidth
    127         {
    128             get
    129             {
    130                 return (double)Screen.GetProperty("availWidth");
    131             }
    132         }
    133 
    134         /// <summary>     
    135         /// Gets the height of the available screen real estate, excluding the dock     
    136         /// or task bar     
    137         /// </summary>     
    138         public static double AvailableScreenHeight
    139         {
    140             get
    141             {
    142                 return (double)Screen.GetProperty("availHeight");
    143             }
    144         }
    145 
    146         /// <summary>     
    147         /// Gets the absolute left pixel position of the window in display coordinates     
    148         /// </summary>     
    149         public static double ScreenPositionLeft
    150         {
    151             get
    152             {
    153                 return _isNavigator ? (double)HtmlPage.Window.GetProperty("screenX")
    154                     : (double)HtmlPage.Window.GetProperty("screenLeft");
    155             }
    156         }
    157 
    158         /// <summary>     
    159         /// Gets the absolute top pixel position of the window in display coordinates     
    160         /// </summary>     
    161         public static double ScreenPositionTop
    162         {
    163             get
    164             {
    165                 return _isNavigator ? (double)HtmlPage.Window.GetProperty("screenY")
    166                     : (double)HtmlPage.Window.GetProperty("screenTop");
    167             }
    168         }
    169 
    170     }
    171 }
    View Code
  • 相关阅读:
    c# 线程同步各类锁
    C#_从DataTable中检索信息
    永无BUG
    标志枚举
    将多行按分隔符"|"合成一行
    回车换行浅析
    url传输编码
    xshell 禁用铃声 提示音
    php 编译安装 mysql.so
    301 302 304
  • 原文地址:https://www.cnblogs.com/zxbzl/p/4169592.html
Copyright © 2011-2022 走看看