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

比较颜色.

比较颜色.

C#
海绵宝宝撒 2021-11-21 10:49:57
我正在操作一个 excel 文件(使用 Interop)。我正在尝试检查特定单元格的背景颜色。if (xlWorkSheet.Cells[1,j+1].Interior.Color == System.Drawing.Color.Red){    cell1.Interior.Color = System.Drawing.Color.Red;}'运算符'=='不能应用于'double'和'System.Drawing.Color'类型的操作数我什至不确定这个错误是否有意义,因为我有这个代码,我可以很好地使用它。所以如果我可以分配,为什么我不能比较?cellHeader.Interior.Color = System.Drawing.Color.Red;
查看完整描述

2 回答

?
皈依舞

TA贡献1851条经验 获得超3个赞

详细说明大卫史密斯的回答:


if (xlWorkSheet.Cells[1,j+1].Interior.Color.Equals(System.Drawing.Color.Red))

{

    cell1.Interior.Color = System.Drawing.Color.Red;

}

无法使用==运算符比较 c# 中的某些类型。它适用于几种类型,但除基本类型之外的任何类型通常都使用该.Equals()方法。它具有相同的目的,但适用于更多场景。


请参阅此处了解更多信息:


https://www.c-sharpcorner.com/UploadFile/3d39b4/difference-between-operator-and-equals-method-in-C-Sharp/


查看完整回答
反对 回复 2021-11-21
?
蝴蝶不菲

TA贡献1810条经验 获得超4个赞

试试 System.Drawing.Color.Equals:

if (xlWorkSheet.Cells[1,j+1].Interior.Color.Equals(System.Drawing.Color.Red))


查看完整回答
反对 回复 2021-11-21
  • 2 回答
  • 0 关注
  • 161 浏览

添加回答

举报

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