我在BaseLVItem类中有一个属性Data
namespace Spo.Plugins
{
public class BaseLVItem : System.Windows.Forms.ListViewItem
{
public virtual IBaseObject Data
{
get{ return m_data; }
}
private IBaseObject m_data = null;
我们正确使用它,如下所示,在ResourcePolicySystemsLVI类
中public class ResourcePolicySystemsLVI : BaseLVItem
{
public new IResourcePolicy Data
{
get
{
return (IResourcePolicy)base.Data;
}
}}
但是当我在下面的类中使用时,我收到错误'System.ComponentModel.StringConverter'不包含'Data'的定义
using Spo.Plugins;
public class ResourcePolicyConverter : StringConverter
{
public new IResourcePolicy Data
{
get
{
return (IResourcePolicy)base.Data;
}
}
我无法在这里实现BaseLVItem类,任何人都可以在这里指导我
Dixon我正在实施这样的
public class ResourcePolicyConverter : StringConverter
{
BaseLVItem lvItem = new BaseLVItem();
IResourcePolicy data = (IResourcePolicy)lvItem.Data;
--------------------
else if ((value == null) && data.AgentVersion != null )
{
return m_nullPolicy;
}
答案 0 :(得分:1)
这是因为您的班级ResourcePolicyConverter
继承自StringConverter
而不是BaseLVItem
。一个错字?
答案 1 :(得分:1)
您在第二个示例中无法使用Data
属性的原因是ResourcePolicyConverter
不从BaseLVItem
继承,因此,{{1}中的数据属性不可用}}
您可以简单地实例化新的base
,然后访问BaseLVItem
属性。
Data