0

我正在构建一个 WPF 屏幕,其中包含从 C# 类中的 IList 创建的按钮。它构建并显示正确数量的按钮;但是,不显示从列表项构建的按钮上的文本。

我以前在另一个班级/屏幕上做过这个,效果很好。

我在调试时注意到,如果我将鼠标悬停在有效类 (BibList) 中的 List 对象上,我会得到飞越提示“不一致的可访问性:属性类型 'System.Collections.Generic.IList' 的可访问性低于属性 'BurnIn .UI.Modules.Operations.VieModels.OvenViewModel.BibList'

我在有效的类中没有收到该消息,它与我所看到的相匹配(XAML 看不到 SlotInfo 信息);但是,一切都是公开的,所以我看不出可访问性问题在哪里。

这是声明列表的代码:

namespace BurnIn.UI.Modules.Operations.ViewModels
{
    public class SlotInfo
    {
        public int SlotNumber;
        public string BibName;
    }

    public class OvenViewModel : OvenViewModelBase
    {
        private List<SlotInfo> m_BibList = new List<SlotInfo>();
        public IList<SlotInfo> BibList
        {
            get { return m_BibList; }
        }
4

2 回答 2

0

它可能与 List 和 IList 之间的转换有关。如果更改类型以匹配会发生什么?

像这样

namespace BurnIn.UI.Modules.Operations.ViewModels
{
public class SlotInfo
{
    public int SlotNumber;
    public string BibName;
}

public class OvenViewModel : OvenViewModelBase
{
    var m_BibList = new List<SlotInfo>();
    public IList<SlotInfo> BibList
    {
        get { return m_BibList; }
    }

或这个

namespace BurnIn.UI.Modules.Operations.ViewModels
{
public class SlotInfo
{
    public int SlotNumber;
    public string BibName;
}

public class OvenViewModel : OvenViewModelBase
{
    List<SlotInfo> m_BibList = new List<SlotInfo>();
    public List<SlotInfo> BibList
    {
        get { return m_BibList; }
    }
于 2012-06-28T02:36:59.300 回答
0

问题是 SlotInfo 元素是成员而不是属性。飞越的“帮助”提示是红鲱鱼。

于 2012-06-28T15:57:26.823 回答