{"action":"opened","issue":{"url":"https://api.github.com/repos/PrismLibrary/Prism/issues/385","labels_url":"https://api.github.com/repos/PrismLibrary/Prism/issues/385/labels{/name}","comments_url":"https://api.github.com/repos/PrismLibrary/Prism/issues/385/comments","events_url":"https://api.github.com/repos/PrismLibrary/Prism/issues/385/events","html_url":"https://github.com/PrismLibrary/Prism/issues/385","id":125754955,"number":385,"title":"TriggerParameterPath in InvokeCommandAction","user":{"login":"zzczzc004","id":9030684,"avatar_url":"https://avatars.githubusercontent.com/u/9030684?v=3","gravatar_id":"","url":"https://api.github.com/users/zzczzc004","html_url":"https://github.com/zzczzc004","followers_url":"https://api.github.com/users/zzczzc004/followers","following_url":"https://api.github.com/users/zzczzc004/following{/other_user}","gists_url":"https://api.github.com/users/zzczzc004/gists{/gist_id}","starred_url":"https://api.github.com/users/zzczzc004/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/zzczzc004/subscriptions","organizations_url":"https://api.github.com/users/zzczzc004/orgs","repos_url":"https://api.github.com/users/zzczzc004/repos","events_url":"https://api.github.com/users/zzczzc004/events{/privacy}","received_events_url":"https://api.github.com/users/zzczzc004/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":0,"created_at":"2016-01-09T12:01:40Z","updated_at":"2016-01-09T12:01:40Z","closed_at":null,"body":"In prism5, <b>TriggerParameterPath</b> is introducted for get parameter from UI event easliy.That's great, however the implementation of TriggerParameterPath use reflect only get the <b>DeclaredProperty</b>, i think is not reasonable. I think It's should use <b>GetProperty(propertyPathPart)</b> to get public Property.\r\n\r\nHere is for my scenario. I have a lot of label in one grid. Every label has the same logic except use different lable context when is been clicked. I use <b>RoutedEvent</b> mechanism and write command binding in grid like this. But it's failed because the implementation of TriggerParameterPath. MouseUp has <b>MouseButtonEventArgs</b> type parameter, but Source is the public property of the base type of MouseButtonEventArgs.\r\n\r\n\t<Grid>\r\n        ...\r\n\t\t<i:Interaction.Triggers>\r\n\t\t\t<i:EventTrigger EventName=\"MouseUp\">\r\n\t\t\t\t<prism:InvokeCommandAction Command=\"{Binding SelectedCommand}\" TriggerParameterPath=\"Source.Content\"/>\r\n\t\t\t</i:EventTrigger>\r\n\t\t</i:Interaction.Triggers>\r\n\t\t\r\n\t\t<Label Content=\"A\"\tGrid.Column=\"0\"\tGrid.Row=\"0\" />\r\n\t\t<Label Content=\"B\"\tGrid.Column=\"1\"\tGrid.Row=\"0\" />\r\n\t</Grid>"}}