为了账号安全,请及时绑定邮箱和手机立即绑定

我想通过从下拉列表中选择颜色来更改面板的背景颜色

我想通过从下拉列表中选择颜色来更改面板的背景颜色

PHP
慕村225694 2024-01-20 21:45:30
我正在编写允许用户选择页面背景颜色(下拉列表)的代码,问题是我从库 System.Drawing 中获取了已知颜色,但我不知道如何从列表中获取该值。我怎样才能做到呢?protected void Page_Load(对象发送者, EventArgs e) {        if (!IsPostBack)        {            string[] colorArray = Enum.GetNames(typeof(KnownColor));            drpBack.DataSource = colorArray;            drpBack.DataBind();}// 页面加载,其中我获取了颜色名称;//这里是按钮更新protected void btnUpdate_Click(object sender, EventArgs e){        string back = drpBack.Text;        Color style = (Color)Enum.Parse(typeof(Color), back);        pnlCard.BackColor = style;}当我单击按钮更新时,它给我错误:提供的类型必须是枚举。我尝试写而不是 Color - KnownColor 它给了我消息:无法隐式地将类型“KnownColor”转换为“Color”
查看完整描述

1 回答

?
青春有我

TA贡献1784条经验 获得超8个赞

您应该将输入解析回KnownColorColor然后您可以使用以下命令从该值创建一个Color.FromKnownColor()

protected void btnUpdate_Click(object sender, EventArgs e){

        string back = drpBack.Text;

        var parsedColor = (KnownColor)Enum.Parse(typeof(KnownColor), back);

        var style = Color.FromKnownColor(parsedColor);

        pnlCard.BackColor = style;

}


查看完整回答
反对 回复 2024-01-20
  • 1 回答
  • 0 关注
  • 31 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信