【发布时间】:2015-05-21 13:19:16
【问题描述】:
我有一个带有按钮类的 dll。它看起来像这样:
internal class CoolButton12345: UserControl
{
all fields, properties and methods...
public Image Image{get;set;}
}
我正在尝试将此按钮属性值更改为我自己的值。
dynamic playButton = typeof (FooDll).Assembly.GetType("ClassWhichHasThisButton")
.GetFields(BindingFlags.Instance | BindingFlags.NonPublic)
.FirstOrDefault(x => x.Name == "playButton").GetValue(FooInstance.Controls[0]);
playButton.Image = (Image)pauseBitmap;
但是我收到了这个错误
未处理的类型异常 'Microsoft.CSharp.RuntimeBinder.RuntimeBinderException' 发生在 System.Core.dll
为什么我的方法不对? 请告诉我我可以做这样的事情吗? 如果我可以请帮助找到如何做到这一点。
【问题讨论】:
标签: c# .net dynamic reflection