首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

可访问性不一致,该如何解决

2012-02-01 
可访问性不一致类型:private enum FlatStyles{officeXP,office2003,}属性:public FlatStyles FlatComboSty

可访问性不一致
类型:
 private enum FlatStyles
  {
  officeXP,
  office2003,
  }

属性:
 public FlatStyles FlatComboStyle
  {
  get
  {
  return flatComboBoxStyles;
  }
  set
  {
  flatComboBoxStyles = value;
  // this.Refresh();
  }
  }

编译的时候出现:
错误1可访问性不一致: 属性类型“XXXControls.XXXCombBox.FlatStyles”比属性“XXXControls.XXXCombBox.FlatComboStyle”的可访问性低

[解决办法]
private enum FlatStyles改为public enum FlatStyles
[解决办法]
在这种情况下,你必须将FlatStyles的enum的访问描述符改为“public”。
为什么?
因为你的FlatComboStyle的返回值是一个FlatStyles类型的enum。假如我在另一个程序集中调用你的FlatComboStyle属性,那么问题来了:我没办法获得这个属性的值,因为这个属性所返回的类型我根本就找不到(因为它是private的,我访问不到)。
因此你必须改为public,才能正确编译

热点排行