我会尽力清楚。以下是上下文: 我正在编写一个库,它将在另一个项目中用作动态DLL。
我有1个内部和2个接口的类:
internal class FinalClass : IFinalClass
{
public string Libelle { get; set; }
}
public interface IFinalClass : IBase
{
// some properties
}
public interface IBase
{
string Libelle { get; set; }
}
然后,我在我的项目中加载我的库,我只想操作IFinalClass类型。
我创建了一个包含许多IFinalClass项目的组合框,并将displaymember设置为“Libelle”。问题是:我看不到“Libelle”的价值,实际上会出现FinalClass的集合。 (就好像我们正在做一个ToString())。如果我是对的,那么组合框找不到属性“Libelle”。
但这很奇怪,因为如果我在填充组合框数据源之前将IFinalClass项目转换为IBase,一切正常。
我很好奇在这种情况下发生了什么。
(请注意,实现“Libelle”的类是内部的,因此其他项目不知道此类型。)
有什么想法吗? :) 谢谢!
答案 0 :(得分:4)
"aok-e","aok-8","aok-c"
中的{p> Libelle
为AParentClass
。
但在private
中,默认情况下它是公开的。