問題タブ [windows-8.1-universal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
xaml - Windows ストア ユニバーサル アプリのフォント サイズのスケーリング (W8.1 + WP8.1)
Windows ストア ユニバーサル アプリ (W8.1 + WP8.1) でテキストを拡大縮小するにはどうすればよいですか? 基本的に、使用するデバイスや解像度に関係なく、アプリは同じように見えるはずです。現在の状況では、レイアウト (動的グリッド ベースのレイアウト) と画像は、テキスト (フォント サイズ) を除いて適切にスケーリングされます。
表示されるテキストは、WVGA 解像度 (480 × 800) ではきれいに見えますが、1080p 解像度では信じられないほど小さいです。
ピクセル密度にスケーリングするためのガイドラインや 複数の画面サイズをサポートするためのガイドラインなど、すでに多くのものを読んでい ます
しかし、ディスプレイの解像度/ DPIに関係なく、テキストを読みやすくする方法はまだわかりません。
もちろん、DisplayInformation.ResolutionScaleプロパティを使用してフォント サイズを適切な値に変換するクラスを作成することもできます。
例:
- ScaleFactor 1x の WVGA で FontSize 16 は FontSize 16 に等しい
- ScaleFactor 1.6x の WXGA で FontSize 16 は、FontSize 25,6 に等しい
- ScaleFactor 1.5x を使用した 720p の FontSize 16 は、FontSize 24 に等しい
- ScaleFactor 2.25x を使用した 1080p の FontSize 16 は、FontSize 36 に等しい
しかし、これがすべてのシナリオで機能するかどうかはわかりません。そうするより良い方法はありますか?このような一般的なタスクは、機能を組み込むことで実行できると思いました。
免責事項:これは(うまくいけば)「質問のためにグーグルで検索させてください」ではありません。スケーリングに関するページをたくさん見つけましたが、それらはすべてレイアウトまたは画像をカバーしています。しかし、フォントサイズのスケーリングについては何も見つかりませんでした。私が何かを逃した場合は、ご容赦ください。
編集:残念ながら、問題を明確に表現できませんでした: (左側が WVGA、右側が 1080p)
c# - Windows ユニバーサル アプリ (Windows 10) で C# を使用してデバイス情報を取得する
新しいユニバーサル Windows アプリ プラットフォームで C# を使用して、デバイス固有の情報をプログラムで取得する方法を考えていました。これは、古い Windows フォーム プロジェクトの既存の C# コードから Windows 10 の UAP に単純化した PC ツールボックスを取得するためです。
搭載されている (または使用可能な) RAM の合計、CPU アーキテクチャと ID/名前 (64 ビット Intel Core i5-XXXX など)、デバイスの製造元とモデル番号 (Dell XPS XXXX)、およびシリアル番号/サービス タグを取得したいと考えています。 .
これらのアプリが Windows 10 を使用し、このアプリが最初は従来の PC 向けであることは当然ですが、限られた機能で Windows Phone/Mobile に拡張したいと考えています (一部の部分が ARM でどのように動作するか/動作するかどうかはわかりません)。 . 「Home」、「Pro」、「Enterprise」、「Mobile」、「Mobile Enterprise」など、Windows 10 のどのエディション、32/64 ビット、および言語を検出するにはどうすればよいですか?
Windows ストア アプリで動作しないと思われるライブラリを使用する既存の C# コードがあります。
私は C# にはかなり慣れていませんが、クラスや参照の助けをいただければ幸いです。これらの仕様のすべてを格納するすべてのコードを取得するのは少し大変かもしれませんが (ATM でさえ可能であれば)、正しい方向へのポインターは非常に役立ちます。
windows-phone-8.1 - MessageDialog を複数回呼び出すと、Windows Phone 8.1 でクラッシュが発生する
MVVM-Lightを使用するユニバーサル アプリを開発しています。ViewModelsからWebServicesを呼び出し、 WebServicesでViewModelsへの呼び出しで発生した例外をスローします: TimeOut、Wrong URL、Server Exception、...
MessageDialogを介してこれらの例外ごとに表示されるメッセージを一元化するクラス「ExceptionsMsgHelper.cs 」を作成しました。
私のホームページは、複数のデータを含むピボットに基づいています。一部の Web サービスは非同期的に呼び出されます。クラス「 ExceptionsMsgHelper.cs 」を介して MessageDialog に例外を表示するとクラッシュしますが、以前の例外は別の MessageDialog にも表示されます。
これが私の元のクラスの一部です:
=> "msgbox.ShowAsync()" を 2 回呼び出すと、"System.UnauthorizedAccessException" 例外が発生します: "Access is denied. (Exception from HRESULT: 0x80070005 (E_ACCESSDENIED))" というメッセージが表示されます。
私はそれを修正するために解決策を探しました:
- ここで推奨されているように、「Dispatcter」を使用します ( WinRT - MessageDialog.ShowAsync は、カスタム クラスで UnauthorizedAccessException をスローします) 。
コードは次のとおりです。
=>しかし、私はいつも同じ例外に遭遇します。
- ここで推奨されているように、「IAsyncOperation」コマンドを使用して前の MessageDialog を閉じます ( MessageDialog ShowAsync は 2 番目のダイアログで accessdenied 例外をスローします) 。
このコードで:
=>しかし、この場合も、常に同じ例外が発生します。
- ここで説明するように、拡張機能を使用して messagedialogs をキューに入れます(複数の MessageDialog アプリのクラッシュ)
コードは次のとおりです。
=>そして、これは私にとってはうまくいきます。
しかし、それは著者だと言うように、それはおそらく最善の解決策ではありません:
新しいダイアログを開く必要がある場合は、既存のダイアログを閉じます。これは最も簡単なオプションであり、おそらく最良の方法ですが、ダイアログの内容によっては何らかの重要なダイアログをキャンセルするリスクがあります。古いダイアログが閉じられないようにダイアログをキューに入れますが、古いダイアログが閉じられた後に新しいダイアログが表示されます。これにより、すべてのダイアログがユーザーによって閉じられるようになりますが、アプリが何百ものダイアログを表示し始めることができる場合、これは問題になる可能性があります。まだ表示されていない場合にのみ、新しいものを開きます。現在、これは新しいメッセージが表示されないリスクがあり、最初のオプションよりも問題があるように聞こえます。
=> より適応していると思われる最初の 2 つの解決策を適用できない理由を理解したい
tabs - Windows 8.1 ユニバーサル アプリでタブを作成する
Windows 8.1 ユニバーサル アプリ (VS2013 を使用) に取り組んでおり、 内にタブを作成したいと考えていますGridView
。検索したところ、タブを作成できないことがわかったので、少なくともタブのように見えるものを作成できるソリューションが必要です。
必要なものは次のとおりです。
タブヘッダーとして画像があります。各画像(Appbar
アイコンなど)をクリックStackPanel
すると、同じグリッドに異なる画像が表示されます。
これは、アプリを次のようにする必要がある方法です。
windows-phone-8.1 - Windows Phone 8.1 - テンプレートを作成し、多くの場所で使用していますか?
テンプレートを作成して多くの場所で使用する必要があるシナリオがあります。
例えば :
私はこのようなことを試しました:
私が直面している問題は、初めて正常に動作し、戻って再度ナビゲートすると、「要素は既に別の要素の子です」という例外がスローされることです。
私に提案してください、それは正しい方法ですか、それとも他の方法はありますか。
PS : このようなテンプレートを数百個作成したいので、ユーザー コントロールを使用することはできません。
前もって感謝します。