場所の顧客リストを読み込んだ後、特定の顧客を現在の項目として選択したいと考えています。現在の項目に移動しようとすると、項目は選択されません。私は(デバッグによって)私が移動したいアイテムが存在することを確認しました。MoveCurrentTo DataGrid
私は現在の項目に
(CustomerList.MoveCurrentTo(CustomerList.CurrentItem) //it works but is senseless.
CustomerList is an ICollectionView.
を移動した場合、私の質問は、「私は私が選択した特定の項目に現在の項目にフォーカスを移動するにはどうすればよい?」です。
CustomerList = new CollectionView (_service.GetCustomers().Where(l => l.LocationID == customer.LocationID));
var item = CustomerList.Cast<AlarmPermit.Entities.Customer>().Where(l => l.BRKey == 52151).Single();
CustomerList.MoveCurrentTo(item);
1) 'VAR項目= CustomerList.Cast始まる行にブレークポイントを設定し...'、あなたが期待する項目を取得しているかどうかを確認します。もしあなたがそうであれば、問題はあなたの 'CustomerList.MoveCurrentTo(item)'にあります。これは表示されていません。 2)このコードを実行するたびに、「CustomerList」の新しいインスタンスを作成しています。 UIで使用しているコントロールは、使用しているものではない既存の「CustomerList」にバインドされている可能性があります。 –
@ ElementalPeteブレークポイントを設定しましたが、私が期待しているアイテムを取得しています。なぜ私のCustomerList.MoveCurrentTo(item)ステートメントが見えないのか分かりません。それはそこにある。 このコードは、ビューモデルのコンストラクタにあります。これは一度だけ実行されます。 CurrentChangedイベントのアイテムを表示するメッセージボックスが表示されます。私は現在のアイテムとしてヌルアイテムを取得します。 – Ken
私は 'CustomerList.MoveCurrentTo(item)'をどこで呼び出すことができますか、私はそのメソッドが何をしているのか分かりません。 'item'がヌルでなく、' item'を 'MoveCurrentTo'メソッドに渡し、' MoveCurrentTo'メソッドが現在のアイテムの設定を担当していて、現在のアイテムが設定されていない場合は、問題が起こりそうです'MoveCurrentTo'メソッドで... –