2013-03-27 8 views
5

Ich verwende Telerik Diaansicht Kontrolle und unterstützt ein SelectionChanged EreignisErstes Objekt aus SelectionChangedEventArgs e Windows Phone 8

private void radSlideView_SelectionChanged(object sender, SelectionChangedEventArgs e) 
{   
    var addedItems = e.AddedItems; 
} 

e enthält das MainViewModel Objekt, das die FileName Eigenschaft enthält. Wie extrahiere ich die FileName Eigenschaft von e? addedItems ist ein System.Collection.IList Typ

enter image description here

Antwort

10

Sie werfen müssen:

if(e.AddedItems.Length > 0)  // make sure there is at least one item.. 
{ 
    MainViewModel firstItem = e.AddedItems[0] as MainViewModel; // cast.. 
    if(firstItem != null)           // if not null.. 
    { 
     string fileName = firstItem.FileName;      // get the file name 
    } 
} 
+0

Ist dies der richtige Weg, um es zu lösen? Ich würde eine Methode erwarten, um in eine Liste zu gelangen, ohne das nullte Element zu verwerfen, zu verwerfen oder zu referenzieren. Es scheint nur unsicher (obwohl ich den Beschützer wieder leere Sammlung zu sehen) und funktioniert nur, wenn wir den Typ kennen zu werfen (und es kann nicht ändern, oder wir werden einen Puff haben) ... –

+2

@Konrad, leider WPF ist voller Kompromisse wie das. Es ist ein Kompromiss zwischen Flexibilität und Sicherheit. –