gpt4 book ai didi

c# - 按钮内容与字符串的比较

转载 作者:太空宇宙 更新时间:2023-11-03 21:48:02 24 4
gpt4 key购买 nike

我正在做一个包含虚拟键盘的 wpf 应用程序,当我点击 CapsLock 按钮时,我收到以下通知:

为了比较值,可能会不自觉地比较引用 ,将左侧强制转换为“string”

在这一行中:

if (btnVK_A.Content == "a")
btnVK_A.Content = "A";
else
btnVK_A.Content = "a";

我将 btnVK_A.Content 转换为字符串,但通知仍然出现。那么我该如何解决这个问题呢?

最佳答案

试试这个:

if ((btnVK_A.Content as string) == "a")

as关键字和ToString()的区别:

两者的目的不同。任何对象的 ToString 方法都应该返回该对象的字符串表示形式。转换完全不同,as 关键字执行条件转换,如前所述。 as 关键字基本上表示“如果该对象是这种类型,请给我一个该对象的这种类型的引用”,而 ToString 表示“给我一个该对象的字符串表示形式” ”。在某些情况下,结果可能相同,但绝不应将两者视为可互换的,因为正如我所说,它们存在的目的不同。如果您打算进行强制转换,那么您应该始终使用强制转换,而不是 ToString

关于c# - 按钮内容与字符串的比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15927399/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com