-1

C++とJavaScriptでMetroスタイルアプリを開発しています。C++側はIObservableVector<T>インスタンスを提供します。JavaScript側はWinJS.UI.ListViewコントロールを使用します。

リストビューは通常、WinJS.UI.IListDataSourceインスタンスに接続されています。最も一般的には、を取り、WinJS.Binding.ListそのdataSourceプロパティを使用します。

IObservableVector<T>ただし、リストビューに接続するのは非常に自然なことのようです。これを行う方法はありますか?たとえば、IObservableVector<T>sをListsまたはIListDataSourcesに変換するためのアダプタはありますか?

私たちがたどることができる1つのルートは、に接続する独自のカスタムWinJS.UI.IListDataAdapter実装を作成しIObservableVector<T>、文書化が不十分な場合などにゲーム全体を実行することWinJS.UI.VirtualizedDataSourceです。しかし、誰かがこれをすでに行ったことがありますか?フレームワークにあるべきだと思われます。

4

2 に答える 2

1

WinJS 1.0は、WinRT変更通知インターフェイス(INotifyPropertyChanged、IObservableVector)をサポートしていません。それらを一緒にフックしたい場合は、アダプター/データソースを作成する必要があります。

于 2012-08-09T18:41:02.527 に答える
1

@Chris Tavares の役立つ、がっかりするような応答に基づいて、そのようなアダプターを作成しました。

https://github.com/NobleJS/WinningJS/blob/master/lib/ObservableVectorDataSource.js

現在は読み取り専用です (そのため、データ ソースを更新することはできず、変更が監視可能なベクトルに反映されることを期待できません)、このアプリではうまく機能します。

于 2012-08-10T16:55:02.910 に答える