将新属性添加到ASP.NET下拉列表

时间:2013-05-10 12:29:33

标签: c# asp.net visual-studio-2010

我需要在asp.net下拉列表中添加一个名为ScoreTitle的新属性。它只接受4个值,我需要intellisense来显示这4个值(例如Value1,Value2,Value3和Value4)。

public class ScoreDropDownList : DropDownList
    {
        private string _scoreTitle;

        public string ScoreTitle
        {
            get
            {
                return _scoreTitle;
            }
            set
            {
                _scoreTitle = value;
            }
        }


        public ScoreDropDownList() : base()
        {
            for (int i = 0; i <= 10; i++)
            {
                Items.Add(new ListItem(i.ToString()));
            }
        }
} 

标记:

<mobile:ScoreDropDownList ID="ddlTidiness" ScoreTitle="Value1" runat="server" CssClass="input-mini inline" />

如何在设置分数标题时添加scoretitle属性并显示4个值?

2 个答案:

答案 0 :(得分:4)

将分数标题设为枚举类型。

public enum ScoreTitle {
    None,
    Win,
    Loss,
    Deuce
}

然后

    public ScoreTitle ScoreTitle
    {
        get;
        set;
    }

答案 1 :(得分:3)

如果要限制有效选项,则需要创建枚举。它不适用于字符串,因为它可以取任何值。

public enum ScoreTitleTypes
{
    Value1,
    Value2,
    Value3,
    Value4
}

public ScoreTitleTypes ScoreTitle { get; set; }

执行ScoreTitle.ToString()会为您提供枚举值名称。