0

これは私の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 を使用するにはどうすればよいですか? 各アイテムに保存されているデータにアクセスするにはどうすればよいですか? プロパティにアクセスできず、それをオブジェクト以外のものに変換できません。

また興味深いことに、コードの出力は「オブジェクト」ではなく「シリーズ」であるため、ToString() と GetType() は適切な型を取得します。

任意の助けのためのthx

4

3 に答える 3

0

オブジェクトにキャストしているため、オブジェクトのプロパティのみを取得します。キャストは実際のカスタム クラスに行われ、そのクラスのプロパティを取得します。myClass currentSer =

于 2012-04-03T16:07:44.817 に答える
0

currentSerie を Series 型にキャストするだけです。

Series currentSerie = (Series)myListView.Items.CurrentItem;
于 2012-04-03T16:08:11.503 に答える
0

キャストしてみたらどうですか?

Series series = (Series)myListView.Items.CurrentItem;
于 2012-04-03T16:08:19.643 に答える