2009-05-27 5 views
0

Lorsque vous utilisez un ListCollectionView, comment puis-je déplacer le focus vers l'enregistrement nouvellement créé? Mes déclarations sontListCollectionView déplacement vers l'enregistrement nouvellement créé

Public WithEvents Data As PersonList = PersonList.GetList() 
Private MyView As New ListCollectionView(Data) 
Private WithEvents _Person As Person 

Le code que j'utilise pour insérer une personne est

_Person = New Person("AAAA", 100) 
    Data.Insert(0, _Person) 

J'ai essayé d'utiliser MyView.MoveCurrentTo (ne sais pas quoi mettre ici), mais rien ne semble fonctionner. Si je travaillais avec le ObservableCollection sous-jacent alors j'irais à l'index 0, mais je ne peux pas me fier à cela car ListCollectionView peut être trié et filtré pour que les enregistrements ne soient plus dans le même ordre que ObservableCollection.

Répondre

0

Avez-vous essayé?

MyView.MoveCurrentTo(MyView.CurrentAddItem) 

Vous pouvez également utiliser MyView.AddNew pour ajouter le nouvel élément, je pense qu'il fait l'élément en cours.

En outre, ne pas oublier de mettre IsSynchronizedWithCurrentItem True sur votre ItemsControl

+0

Salut Thomas, qui était l'une des choses que j'ai essayé. Je ne peux pas croire que c'est si difficile. Supprimer et éditer est si facile. Même ajouter un nouvel enregistrement est facile tant que vous n'avez pas besoin de vous concentrer dessus (ce qui est essentiel!). Je ne peux pas dire à mes clients qu'ils doivent aller chercher l'enregistrement inséré avant de pouvoir entrer les nouvelles données, il devrait y aller automatiquement. Merci pour votre suggestion si .. – Mitch

+0

MISE À JOUR! Résolu, il s'avère être un problème potentiel/différence entre ListCollectionView et Xceed DataGridCollectionView. Le DataGridCollectionView est censé être utilisé à la place de ListCollectionView lors de l'utilisation du DataGrid Xceed car il offre des fonctionnalités supplémentaires. Il semble que lorsque ma vue était liée à DataGridCollectionView, l'AddNew ne fonctionnait plus correctement, mais comme il était supposé être un remplacement direct de ListCollectionView, j'ai supposé que le problème était lié à quelque chose que j'avais mal fait. Je vais contacter Xceed maintenant et obtenir leur "vue" sur ceci ... – Mitch

Questions connexes