SystemSettings 类

提供对设备上的用户界面设置和本机 Windows Embedded CE 操作系统设置的访问权限。

命名空间:  Microsoft.WindowsCE.Forms
程序集:  Microsoft.WindowsCE.Forms(在 Microsoft.WindowsCE.Forms.dll 中)

语法

声明
Public NotInheritable Class SystemSettings
用法
Dim instance As SystemSettings
public sealed class SystemSettings
public ref class SystemSettings sealed
public final class SystemSettings

备注

当前,此类仅提供 ScreenOrientationPlatform 属性的设置。

示例

下面的示例演示如何将设备的屏幕方向从 0 度的默认纵向视图旋转至 90 度,然后旋转至 180 度,然后再旋转至 270 度,最后再转回 0 度。单击该按钮,会循环通过 ScreenOrientation 枚举。

Imports System
Imports System.Drawing
Imports System.Windows.Forms
Imports Microsoft.WindowsCE.Forms



Public Class Form1
   Inherits System.Windows.Forms.Form
   Private WithEvents Button1 As System.Windows.Forms.Button
   Private mainMenu1 As System.Windows.Forms.MainMenu
   Private StatusBar1 As System.Windows.Forms.StatusBar

   ' Set a variable to be incremented by button clicks
   ' that will change the orientation by rotating
   ' through the ScreenOrientation enumeration.
   Private x As Integer = 0


   Public Sub New()
      InitializeComponent()

      Me.MinimizeBox = False

      ' Set the screen orientation to normal
      ' and display the value on the status bar.
      SystemSettings.ScreenOrientation = ScreenOrientation.Angle0
      Me.StatusBar1.Text = SystemSettings.ScreenOrientation.ToString()
   End Sub

   Protected Overrides Sub Dispose(disposing As Boolean)
      MyBase.Dispose(disposing)
   End Sub

   Private Sub InitializeComponent()
      Me.Button1 = New System.Windows.Forms.Button()
      Me.StatusBar1 = New System.Windows.Forms.StatusBar()
      '
      ' Button1
      '
      Me.Button1.Location = New System.Drawing.Point(16, 128)
      Me.Button1.Text = "Rotate"
      '
      ' Form1
      '
      Me.Controls.Add(Button1)
      Me.Controls.Add(StatusBar1)
      Me.Text = "Orientation Demo"
   End Sub

   Shared Sub Main()
      Application.Run(New Form1())
   End Sub


   ' Each click event changes the screen orientation, as determined
   ' by the variable x, which increments from 0 to 3 and then back
   ' to 0. Four clicks cycle through the ScreenOrientation enumeration.
   Private Sub Button1_Click(sender As Object, e As System.EventArgs) Handles Button1.Click

      Select Case x
         Case 0

            ' Pass a value for the ScreenOrientation enumeration
            ' to the SetOrientation method, defined below,
            ' and increment x so that the next button
            ' click rotates the screen orientation.
            SetOrientation(ScreenOrientation.Angle90)
            x += 1
         Case 1
            SetOrientation(ScreenOrientation.Angle180)
            x += 1
         Case 2
            SetOrientation(ScreenOrientation.Angle270)
            x += 1
         Case 3
            SetOrientation(ScreenOrientation.Angle0)
            x = 0
         Case Else
            SetOrientation(ScreenOrientation.Angle0)
            x = 0
      End Select
   End Sub


   ' Set the orientation to a value of the
   ' ScreenOrienation enumeration and update the
   ' status bar with the current angle.
   Private Sub SetOrientation(so As ScreenOrientation)
      ' Set the requested orientation.
      SystemSettings.ScreenOrientation = so

      Me.StatusBar1.Text = SystemSettings.ScreenOrientation.ToString()
   End Sub

End Class
using System;
using System.Drawing;
using System.Collections;
using System.Windows.Forms;
using System.Data;
using Microsoft.WindowsCE.Forms;

namespace SystemSettingsTest
{
public class Form1 : System.Windows.Forms.Form
{
 private System.Windows.Forms.Button button1;
 private System.Windows.Forms.MainMenu mainMenu1;
 private System.Windows.Forms.StatusBar statusBar1;

 // Set a variable to be incremented by button clicks
 // that will change the orientation by rotating
 // through the ScreenOrientation enumeration.
 int x = 0;

 public Form1()
 {
  InitializeComponent();

  this.MinimizeBox = false;

  // Set the screen orientation to normal
  // and display the value on the status bar.
  SystemSettings.ScreenOrientation = ScreenOrientation.Angle0;
  this.statusBar1.Text = SystemSettings.ScreenOrientation.ToString();

 }
 protected override void Dispose( bool disposing )
 {
  base.Dispose( disposing );
 }
 #region Windows Form Designer generated code
 private void InitializeComponent()
 {
  this.mainMenu1 = new System.Windows.Forms.MainMenu();
  this.button1 = new System.Windows.Forms.Button();
  this.statusBar1 = new System.Windows.Forms.StatusBar();
  //
  // button1
  //
  this.button1.Location = new System.Drawing.Point(16, 128);
  this.button1.Text = "Rotate";
  this.button1.Click += new System.EventHandler(this.button1_Click);
  //
  // Form1
  //
  this.Controls.Add(this.button1);
  this.Controls.Add(this.statusBar1);
  this.Menu = this.mainMenu1;
  this.Text = "Orientation Demo";
 }
 #endregion
 static void Main()
 {
  Application.Run(new Form1());
 }


  // Each click event changes the screen orientation, as determined
  // by the variable x, which increments from 0 to 3 and then back
  // to 0. Four clicks cycle through the ScreenOrientation enumeration.

 private void button1_Click(object sender, System.EventArgs e)
 {

  switch(x)
  {
   case 0:

    // Pass a value for the ScreenOrientation enumeration
    // to the SetOrientation method, defined below,
    // and increment x so that the next button
    // click rotates the screen orientation.
    SetOrientation(ScreenOrientation.Angle90);
    x++;
    break;
   case 1:
    SetOrientation(ScreenOrientation.Angle180);
    x++;
    break;
   case 2:
    SetOrientation(ScreenOrientation.Angle270);
    x++;
    break;
   case 3:
    SetOrientation(ScreenOrientation.Angle0);
    x = 0;
    break;
   default:
    SetOrientation(ScreenOrientation.Angle0);
    x = 0;
    break;
  }
 }

  // Set the orientation to a value of the
  // ScreenOrienation enumeration and update the
  // status bar with the current angle.
 private void SetOrientation(ScreenOrientation so)
 {
  // Set the requested orientation.

  SystemSettings.ScreenOrientation = so;

  this.statusBar1.Text = SystemSettings.ScreenOrientation.ToString();
 }

继承层次结构

System.Object
  Microsoft.WindowsCE.Forms.SystemSettings

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

平台

Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC

.NET Framework 和 .NET Compact Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

版本信息

.NET Compact Framework

受以下版本支持:3.5、2.0

另请参见

参考

SystemSettings 成员

Microsoft.WindowsCE.Forms 命名空间

其他资源

如何:处理方向和分辨率更改