![]() |
1
5
答案:
从…起 反射的安全注意事项 以下为: http://msdn.microsoft.com/en-us/library/stfy7tfc.aspx
因此,您不能使用反射安全关键方法,如
|
![]() |
2
0
经过一番修改,我找到了一种方法: 首先,我声明了这个方法:
然后我可以通过反思来称之为:
哪里
这是有效的。正如问题中提到的
不起作用
在我自己的类上没有中间方法(即使用WindowsRunTimeMarshal.AddEventHandler作为
我不知道发生这种情况是因为微软试图防止一些意外的使用,还是其他什么——如果有人真的知道为什么原问题中描述的前一种方法不起作用; 请 留下答案。 |
![]() |
3
0
编辑:由于平台安全性的原因,反射的方法不起作用,就像Silverlight确保应用程序在沙盒中运行一样,不会影响.net核心框架或利用该框架来推翻现有的安全措施。不幸的是,这会影响其他事情,比如功能的真正使用。Microsoft不会让您反映可能被利用的平台类和方法。 不幸的是,像Silverlight一样,WinRT的某些部分被锁定,以将应用程序保存在沙盒中,但这并不是全部原因,但一些API仍然没有开发。 Dris你是对的,你最好的办法是创建一个封装AddEventHandler的包装器方法。 您可以在下面看到一个工作示例,创建对AssignEvent的写反射调用非常简单。本例假设您在屏幕上有一个名为“hellow”的文本块和一个名“button”的按钮。
方舟坤的答案是正确的,因为方法是用 Security Critical Attribute 它不能通过正常方式反映出来。这又是为了保护平台。 正如他所说 security considerations for reflection 解释一切。 |
![]() |
ispiro · 克隆Windows应用商店应用程序-应该更改什么? 9 年前 |
![]() |
MrCSharp · 流动第一次调用时的ReadAsync()非常慢 9 年前 |
|
Owen D. · UWP:通过后台线程的数据绑定更新UI 9 年前 |