• ベストアンサー

Windows8 縦横変化禁止

今、windows8用のアプリを作っています。 そして、タブレットを縦や逆さまにしたとき画面が勝手に切り替わってしまいます。それをなくしたいです。 自分で、タブレット自体の画面の変化を禁止にすれば可能なことはわかっています。 ですが、プログラムで画面の変化を禁止したいです。教えてください。 環境  OS: Windows8 開発環境: VisualStudio2012 開発言語: C#

質問者が選んだベストアンサー

  • ベストアンサー
回答No.1

作っているのは, ・Windows Desktop Application (WinForms, WPF) ・Windows Store Application のどちらでしょうか。 前者であれば, SetDisplayAutoRotationPreferences API http://msdn.microsoft.com/en-us/library/dn629268.aspx で,回転方向を特定方向のみにすることができるようです。 # GetDisplayAutoRotationPreferences APIのExample参照。 後者であれば,アプリマニフェストで設定できるようです。 http://blog.ch3cooh.jp/entry/20130710/1373388640 具体的には, Package/Applications/Application/VisualElements/InitialRotationPreference に,Rotation要素 (Preference属性付き) を加えて設定します。 http://msdn.microsoft.com/en-us/library/windows/apps/dn423279.aspx 実行時であれば, DisplayInformationクラスのAutoRotationPreferencesプロパティ http://msdn.microsoft.com/en-us/library/windows/apps/windows.graphics.display.displayinformation.autorotationpreferences.aspx に値を設定すればできるようです。 ただし,どちらも実験していませんし,後者はアプリマニフェストの名前空間などを見ると8.1以降対応のような感じもします (実行時についてはMSDNに8.1の記述有り)。 APIは対応バージョン不明なのでWindows 8で対応しているかは不明です。

関連するQ&A