Xaml 在可移植类库中使用事件参数

Xaml 在可移植类库中使用事件参数,xaml,windows-8,windows-phone-8,portability,eventargs,Xaml,Windows 8,Windows Phone 8,Portability,Eventargs,我目前正在为Windows8和WindowsPhone8开发一个应用程序。视图的构建必须非常动态,因此我必须为此使用大量的数据模板。在这些数据模板中,我使用Galasoft MVVMLight EventToCommand,因为我需要事件参数,所以我还使用PassEventArgsToCommand=“True” 在我的例子中,我必须使用SelectionChangedEventArgs、DateTimeValueChangedEventArgs和KeyEventArgs 有什么办法可以让这一切

我目前正在为Windows8和WindowsPhone8开发一个应用程序。视图的构建必须非常动态,因此我必须为此使用大量的数据模板。在这些数据模板中,我使用Galasoft MVVMLight EventToCommand,因为我需要事件参数,所以我还使用PassEventArgsToCommand=“True”

在我的例子中,我必须使用SelectionChangedEventArgs、DateTimeValueChangedEventArgs和KeyEventArgs


有什么办法可以让这一切顺利进行吗?

我试过反思,但它确实奏效了

string keyCode = "";

        if (args != null)
        {
            PropertyInfo p = args.GetType().GetProperty("Key");
            keyCode = p.GetValue(args, null).ToString();
        }

经过多次尝试,我终于找到了解决办法。 和user1545884一样,我也使用反射,但GetValue方法不适合我 SelectedItem对象位于“AddedItems”集合中,因此我使用“AddedItems”获取属性方法 我一直在努力,直到找到我的目标

IEnumerable ie = (parameter.GetType().GetRuntimeProperty("AddedItems").GetValue(parameter) as IEnumerable);
foreach (var item in ie)
{
    if (item is Store_Province)
    {

    }
}
string keyCode = "";

        if (args != null)
        {
            PropertyInfo p = args.GetType().GetProperty("Key");
            keyCode = p.GetValue(args, null).ToString();
        }
IEnumerable ie = (parameter.GetType().GetRuntimeProperty("AddedItems").GetValue(parameter) as IEnumerable);
foreach (var item in ie)
{
    if (item is Store_Province)
    {

    }
}