2016-09-17 8 views
0

私は書籍「Heads up c#」を購入しました。私はWindows 10とVS 2015を使用していますので、WPFだけですが、本はXAML用に設計されています。MessageDialog in c#wpf

第11章では、Windows.System、Windows.Storage、Windows.UI.Popupsを使用していますが、 WPFでそれらを見つけることができません、これらのためです:MessageDialog、UIcommand、IStorageFile、FileOpenPicker、WPFプロジェクトにそれらを追加する方法はありますか?

//編集 ありがとう、私はUWPのVSにパッチを当てました。 しかし、今私の問題はscallingさ: ページサイズが800×600に設定されているが、これらは列です:

<Grid.RowDefinitions> 
      <RowDefinition Height="Auto"/> 
      <RowDefinition/> 
      <RowDefinition Height="Auto"/> 
</Grid.RowDefinitions> 

タイトルが1行目にある、コンテンツが第二であり、ボタンが(ロード、セーブ)には、第三にありますそれは存在しませんでしたグリッドのようになります。WPFで

Thats with normal size

After size change

はそれが働いた;/

答えて

0

私の知る限り、これらのクラスはUniversal Windows Platformでのみ動作します。おそらくUWPアプリを作ってみることもできますし、必要なものはWPFですか?

0

Angelin N.は正しいですが、これらのクラスはWPFでは利用できません(少なくとも重要なハッキングはありません)。あなたはその本の中の例を実行するためにUWPプロジェクトを作成する必要があります。

あなたが探しているものの多くは、WPFでも存在します。あなたがWPFで行うことができないUWPで行うことは本当にごくわずかです。たとえば、System.Windows.MessageBoxはメッセージボックスを表示します。 System.IO.FileはすべてのファイルIO(IStorageFileに相当)にアクセスできるようにします。ファイルピッカーはMicrosoft.Win32.FileDialogから利用できます。 2つのプラットフォーム間には同等のものがたくさんあります。

Windows 7用のアプリケーションを作成する場合は、WPFを使用する必要があります。しかし、あなたのアプリがWindows 10以上でしか動作していないのであれば、おそらくUWPが最適でしょう。

+0

私がそれらを必要としたのは主に非同期ダイアログでした。私はMessageBox.show()で非同期化しようとしましたが動作しませんでした。 – superninja9000

+0

あなたがしようとしていることをもっと明確にすることはできますか? WPFでは非同期プログラミングが可能です。通常、Dispatcherオブジェクトを使用する必要があります。たとえば、Dispatcher.InvokeAsyncを使用すると、ShowDialogを含むあらゆる種類の操作を非同期で実行できます。 –