/ / WPF Drag & Drop celého čísla do dátovej mriežky objektu - wpf, mvvm, drag-and-drop

WPF Drag & Drop integer do datagrid objektu - wpf, mvvm, drag-and-drop

V okne svojej aplikácie WPF MVVM mám datagrid, v inom okne mám datagrid iného typu objektu.

Pokiaľ sa dva objekty v rôznych datagridoch zhodujú, potom nie je problém. Ale pri tejto príležitosti mám v týchto oknách dva rôzne objekty.

Čo chcem urobiť v mojom cieľovom okne je, že v mojom kóde za zmenou objektu v DragEvent na objekt, ktorý sa zhoduje s objektom prijímajúcich mriežok, niečo ako toto:

void dgdIngredient_PreviewDrop(object sender, DragEventArgs e)
{
if ((e.Data.GetData("**MyTypeOfObject**",true) as VMProductComponent) != null)
{
VMProductComponent vmp = new VMProductComponent();
e.Data.SetData((e.Data.GetData(typeof(object)) as FOODit.Matilda.ViewModel.VMProductComponent));
}
}

Konverzia však vždy zlyhá a vo svojom vyhlásení GetData () sa vždy stávam neplatným. Môže mi niekto pomôcť získať toto právo, ak je to vôbec možné.

Vopred ďakujem.

/Peter

odpovede:

0 pre odpoveď č. 1

Zdá sa, že som pracoval príliš dlho, snažil som sa priamo konvertovať zdrojový objekt na cieľový, takže toto je správne riešenie.

    private void target_Drop(object sender, DragEventArgs e)
{
MyTargetType data = e.Data.GetData(typeof(MyTargetType)) as MyTargetType;
if (data != null)
{
target.Content = data;
}
}

/Peter