3

当c#给出这个编译错误?

'Favorite.Favorites.FavoriteCollection' 由于其保护级别而无法访问

private void Form1_Load(object sender, EventArgs e)
{
    Favorites objFavorites = new Favorites(); 

    objFavorites.ScanFavorites();
    foreach (WebFavorite objWebFavorite in objFavorites.FavoriteCollection)
    {
        ListViewItem objListViewItem = new ListViewItem();
        objListViewItem.Text = objWebFavorite.Name;
        objListViewItem.SubItems.Add(objWebFavorite.Url);
        lstFavorites.Items.Add(objListViewItem);
    }
}
4

2 回答 2

7

此编译时错误意味着您尝试访问的属性不是public,访问它的唯一方法是修改其访问修饰符或使用反射

于 2010-08-29T15:41:39.680 回答
3

当它不够可见时:例如,如果该类在另一个项目中并且可见性为interal或更低(protectedprivate),您将无法使用它。在这种情况下,您必须将其更改为公开:

public class FavoriteCollection
{
...
}
于 2010-08-29T15:42:19.423 回答