2013-03-27 40 views
5

我使用Telerik的幻灯片视图控制和它支持SelectionChanged事件获取对象8

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

e包含MainViewModel对象,它包含了FileName财产。如何从e“提取”FileName财产? addedItemsSystem.Collection.IList

enter image description here

回答

10

你需要转换:

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

这是解决它的最正确的方法是什么?我希望有一些方法可以进入列表中,而不需要参考第零个元素。这似乎只是不安全的(虽然我再次看到保护者为空集合),并且只有在我们知道要投射到的类型(并且它不能改变或我们会有一个噗噗声)时才有效... – 2015-06-29 13:07:20

+2

@Konrad,不幸的是WPF是充满了这样的折衷。这是灵活性和安全性之间的折衷。 – 2015-06-30 03:17:27