ツールキット バイナリ バージョン: 4.0.30319
SL5バイナリでSimpleIocを使用してビューモデルをキーに登録できませんでした。SL4 プロジェクトでMix 11 ナビゲーション サンプルの SL4 バイナリを使用したときだけ、動作するようになりました。
VM を SimpleIoc に登録するコードは次のとおりです。
if (!SimpleIoc.Default.Contains<DeviceListDetailViewModel>(commandParam))
{
SimpleIoc.Default.Register(
() => new DeviceListDetailViewModel(this.Repository, this.NavService) { NavParameter = commandParam }, commandParam);
}
ここで、ビューでインスタンスを確認し、「アイテムが見つかりません」と表示されます。
if (DataContext == null)
{
var url = e.Uri.ToString();
NavParam = url.Substring(url.IndexOf("?") + 1);
if (!SimpleIoc.Default.Contains<DeviceListDetailViewModel>(NavParam))
{
MessageBox.Show("Item not found");
return;
}
var vm = SimpleIoc.Default.GetInstance<DeviceListDetailViewModel>(NavParam);
DataContext = vm;
}
私は何を間違っていますか?