我正在尝试访问绑定到的对象DataTemplate
,特别是我只需要一个 int 值。我已经通过 Tap 将 DataTemplate 中的主网格链接到事件处理程序:
<DataTemplate x:Name="joinTemplate">
<Grid Tag="{Binding index}" DataContext="{Binding}" Tap="select_Click" ...>
...
</Grid>
</DataTemplate>
我的处理程序看起来像:
private void select_Click(object sender, System.Windows.Input.GestureEventArgs e)
问题是我仍然无法访问sender.DataContext
或sender.Tag
. 但是,当我在调试器中运行它并通过 Watch 查看它时,我可以DataContext
通过简单地扩展“base”两次来同时访问 the 和 Tag。这应该意味着我得到的对象继承了这些对象,并且在某种程度上是原始 Grid 的子对象,但是,我认为发送者始终是Grid
您将处理程序绑定到的对象?要获得我点击的实际元素,我必须使用,对于这个例子,e.OriginalSource
对吧?