这是我的xaml:
<ListView Name="myListView" ItemsSource="{Binding ElementName=IndexPage, Path=SeriesCollection}" ScrollViewer.HorizontalScrollBarVisibility="Disabled" IsSynchronizedWithCurrentItem="True" SelectionChanged="handleSelected">
<ListView.ItemsPanel >
<ItemsPanelTemplate>
<WrapPanel>
</WrapPanel>
</ItemsPanelTemplate>
</ListView.ItemsPanel>
<ListView.ItemTemplate>
<DataTemplate>
<StackPanel >
<Image Width="214" Height="317" Source="{Binding Image}"/>
<Label Content="{Binding Name}" />
</StackPanel>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>这是我后面的代码
public void handleSelected(object sender, RoutedEventArgs args)
{
object currentSerie = myListView.Items.CurrentItem;
Console.WriteLine(currentSerie.GetType());
Console.WriteLine(currentSerie.ToString());
}如何使用currentSerie?如何访问存储在每个项目中的数据?我不能访问属性,也不能把它转换成对象以外的任何东西。
同样有趣的是,代码的输出不是"object“而是"Series”,因此ToString()和GetType()的类型是正确的。
thx寻求任何帮助
发布于 2012-04-04 00:08:12
只需将currentSerie类型转换为Series。
Series currentSerie = (Series)myListView.Items.CurrentItem;发布于 2012-04-04 00:07:45
您将强制转换为object,因此您只能获取object的属性。强制转换为真正的自定义类,您将获得该类的属性。myClass currentSer =
发布于 2012-04-04 00:08:20
casting it怎么样?
Series series = (Series)myListView.Items.CurrentItem;https://stackoverflow.com/questions/9997159
复制相似问题