0

さて、私は特定のクエリのDBを検索し、後でその結果をダウンロードしてメインページのリストボックスに表示するアプリを構築しています。

すべての結果にはさらに詳細な情報があるため、最初に使用することにしたのは何らかの詳細ページです。しかし、私はこのプロセスを実現する方法がわかりません:

  • メインページで、テキストボックスに入力し、ボタンを押して検索します
  • 何らかの方法で MainViewModel に移動し、MainPage のテキスト ボックスの値を使用して LoadData() メソッドを呼び出します。
4

2 に答える 2

2

ビューモデル

    public class SearchViewModel {
      public ICommand SearchCommand {get;set;}
      public string SearchCriteria {get;set;}
    }

ビューのコードビハインド

    View.DataContext = viewModel

xaml を表示:

    <Button Command="{Binding SearchCommand}"/>
    <TextBox Text="{Binding SearchCriteria}"/>

コマンドが呼び出されると、検索条件によってデータをフィルター処理し、ビューに通知します。

MVVM パターンの説明は次のとおりです: http://en.wikipedia.org/wiki/Model_View_ViewModel

于 2012-09-06T11:19:39.017 に答える
1

MVVM は、Model、View、View Model であることに注意してください。

したがって、そのページのビュー モデルでコードをトリガーするメイン ページ (ビュー) の検索があります。次に、詳細を新しいビューに表示します。実際に考えるべきことは次のとおりです。

  1. あるビュー モデルから別のビュー モデルにパラメーターを渡すにはどうすればよいですか。これはMVVMフレームワークに依存するため、どのフレームワークを述べていないため、詳細を示すことはできません.
  2. 次に、パラメーターを使用して、モデルで検索を使用します (質問では無視します)。

私が MVVM システムで行っていることは、標準のページ ナビゲートを行い、パラメーターを新しいページに渡し、それを OnNavigated メソッドで取得して解析し、それをビュー モデルに渡して、モデル内のデータをフィルター処理することです。その値。

于 2012-09-06T11:15:12.827 に答える