Ars*_*yan 8 c# wpf wpf-controls uielement
为了在我的WPF表单中记录用户操作,我添加了一些全局事件处理程序
我想准确记录哪个控件触发事件,是否有UIElement像ASP.Net中的ClientId这样的wpf的唯一标识符?
Jas*_*dge 11
你为什么不使用哈希码.
您可以比较这些值以确保它们是同一个对象,并且很容易获得它们 .GetHashCode()
显然每次运行程序时都会有所不同,所以实际上这绝对是一个坏主意,除非你想在每次记录进程时更新日志.尽管如此
我的意思是你可以在创建日志时为每个对象存储一个哈希值,但我不知道我是否喜欢它
似乎我找到了问题的答案,答案是否定的,现在就可以这样做,正如 MSDN 中所述(http://msdn.microsoft.com/en-us/magazine/dd483216.aspx)
请注意,顶级 Window 控件定义不包含 Name 属性。这很重要,因为我们很快就会看到,当您编写测试自动化时,使用 MUIA 库获取对控件的引用的一种简单方法是访问 AutomationId 属性,该属性是由编译器根据控件的 Name 属性生成的。没有 XAML Name 属性的控件将不会接收 AutomationId 属性。这个想法是一个具体的低级示例,说明了考虑安全性、可扩展性和测试自动化等应用程序设计问题的重要性。