1

私が行っているチュートリアルに関して2つの質問があります。

Q1。

チュートリアルを通じて、彼らはデータソースを使用します

アプリでデータを使用する

アプリでデータを使用するには、App.xamlのリソースとしてデータソースのインスタンスを作成します。インスタンスにfeedDataSourceという名前を付けます。

BR211380.wedge(en-us、WIN.10).gifアプリにリソースを追加するには

Double-click App.xaml in Solution Explorer. The file opens in the XAML editor.
Add the resource declaration, <local:FeedDataSource x:Key="feedDataSource"/>, to the root ResourceDictionary, after the
MergedDictionaries collection.

そして、OnLaunchメソッドでそれを使用します。

 var connectionProfile = Windows.Networking.Connectivity.NetworkInformation.GetInternetConnectionProfile();
 if (connectionProfile != null)
 {
     FeedDataSource feedDataSource = (FeedDataSource)App.Current.Resources["feedDataSource"];
     if (feedDataSource != null)
     {
         if (feedDataSource.Feeds.Count == 0)
         {
             await feedDataSource.GetFeedsAsync();
         }
     }
 }

なぜ彼らはそれをリソースに保存するのだろうか?クラスのインスタンスを作成して、そこから結果を取得しないのはなぜですか?

Q2。

記事の後半では、このデータソースアイテムを「グリッドビューアイテム」とともに使用しています。私はこれが彼らの他のテンプレートプロジェクトで行われているのを見ました。インターフェイスを作成する標準的な方法はありますか?

最初は、画面にいくつかの画像ボタンをドロップしてクリックイベントをフックするだけだと思っていましたが、今はわかりません。

4

1 に答える 1

0

XAMLリソースは基本的にインスタンスを作成し、それをResourcesコレクションで使用できるようにするため、クラスを自分でインスタンス化できます。リソースとして使用すると、このオブジェクトが保持され、アプリケーションのさまざまなページからアクセスできるようになります。確かにクラスを明示的に作成することができ、それにシングルトンパターンを適用すると、意味的に同等になります。

チュートリアルで2番目の質問のコンテキストが表示されるかどうかはわかりませんが、通常、表示されるパターンはModel-View-ViewModel(MVVM)です。これは、WindowsStoreアプリのデファクトスタンダードパターンです。 は、ビューであるXAMLページのすべてのバインディングマークアップにfeedDataSource割り当てられるモデルとその一部を提供しています。この背後にある考え方は、データをモデルから分離することです。これにより、新しいデータフィードの読み込みなどを行うときに、データソースを変更するだけで、すべてのデータバインディングマークアップにデータが自動的に反映されます。ユーザーインターフェイスの新しいデータ。DefaultViewModelDataContext

TextBox.Text = "My text"のようなコードを書いていることに気付いた場合は、パターンから逸脱していることになります。

于 2013-01-24T01:47:19.640 に答える