C#无法从Listview项中获取值

时间:2015-09-24 17:36:01

标签: c# xml listview

我正在尝试从Listview中的点击项中获取值,但出于某种原因,我无法访问我班级中的任何变量。

这是我的列表视图:

<ListView x:Name="lvGames" Margin="0,29,583.8,-0.2" SelectionChanged="MySelectionChanged">
    <ListView.View>
        <GridView>
            <GridViewColumn Header="Name" Width="149" DisplayMemberBinding="{Binding Name}"/>
        </GridView>
    </ListView.View>
</ListView>

附加到Listview的类:

namespace GameLauncher.Classes
{
    class Game
    {
        public bool CheckBoxes { get; set; }

        public string Name { get; set; }

        public string Path { get; set; }

        public int time { get; set; }
    }
}

SelectionChanged事件:

private void MySelectionChanged(object sender, SelectionChangedEventArgs e)
{
    MessageBox.Show("Selected: " + e.AddedItems[0]);
}

此SelectionChanged事件返回正确的类路径GameLauncher.Classes.Game 但我无法访问e.AddedItems[0].Name;例如。为什么我不能从这里访问我的Game类中的任何变量?我也试过lvGames.SelectedItems[0].Name也没用。我唯一的选择是Equals,GetHashCode,GetType和ToString。

我希望有人知道我在这里做错了什么。

感谢阅读/帮助!

1 个答案:

答案 0 :(得分:3)

SelectionChangedEventArgs.AddedItems返回一个IList。你需要投射到游戏。所以你需要这样做:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<p id="ids">IDs:</p>