private void TrendicProductClick(object sender, int position)
{
}
这是给我发件人和职位的方法。
我想获得_DealList,它位于发件人的“非公开成员”一方。
我的发件人层次结构是这样的=>
发件人
基础
物品计数
非公众成员
_交易清单
我想访问
_DealList
的数据 最佳答案
要访问发件人的私有属性,如@Tim所建议,我们需要使用Reflection
例如让我们假设发送者的类型是MyClass
并具有以下结构,那么您可以通过执行以下操作获取属性。我假设dealList
是公开的。否则,您也可以使用反射:
class Program
{
static void Main(string[] args)
{
MyClass myObj = new MyClass();
FooBar(myObj);
}
public static void FooBar(object sender)
{
Type t = typeof(MyClass);
var info = t.GetField("deal",BindingFlags.NonPublic | BindingFlags.Instance);
var dealObject = info?.GetValue(sender);
var dealListObj = ((DealList) dealObject)?.dealList;
}
}
public class MyClass
{
private DealList deal = new DealList();
public void Foo() { }
}
public class DealList
{
public List<int> dealList = new List<int>() {2,3};
}