怎么了?
public partial class MainWindow : Window
{
public ObservableCollection<TabViewModel> Tabs { get; set; }
public ICollectionView TabsViewSource { get; set; }
public int CurrentIndex { get { return TabsViewSource.CurrentPosition; } }
Run Code Online (Sandbox Code Playgroud)
我明白了
可访问性不一致:属性类型'System.Collections.ObjectModel.ObservableCollection'的可访问性低于属性'TabsRendering.MainWindow.Tabs'
当我将代码更改为
public partial class MainWindow : Window
{
ObservableCollection<TabViewModel> Tabs { get; set; }
public ICollectionView TabsViewSource { get; set; }
public int CurrentIndex { get { return TabsViewSource.CurrentPosition; } }
Run Code Online (Sandbox Code Playgroud)
有用.什么是错public的ObservableCollection
Ani*_*Ani 66
让TabViewModel公众型了.
显然,对于公共包含类型的公共属性而言,它是不公开的类型是没有意义的.该物业如何出现在外部集会上?
您的第二个示例有效,因为作为一般规则,不提供可访问性修饰符意味着选择最不适用的修饰符作为默认值 - 在这种情况下:private.显然,声明内部(?)类型的私有属性没有一致性问题.