C#编译错误:“由于其保护级别,X无法访问”
当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); } }
此编译时错误意味着您尝试访问的属性不是public
的,访问它的唯一方法是修改其访问修饰符或使用reflection 。
当它无法到达时:例如,如果该类位于另一个项目中且可见性是interal
或更低( protected
或private
),则您将无法使用它。 在这种情况下,您必须将其更改为公开:
public class FavoriteCollection { ... }