c# - 如何纠正错误运算符'&&'不能应用于'bool'类型的操作数?和“布尔”
问题描述
这是我的 c# 代码。我在这一行出现错误,因为运算符“&&”不能应用于“布尔”类型的操作数?和“布尔”
if (openFileDialog.ShowDialog() && viewModel.OpenFileCommand.CanExecute(openFileDialog.FileName))
{
viewModel.OpenFileCommand.Execute(openFileDialog.FileName);
}
请帮我纠正这个错误。
解决方案
返回
Nullable<Boolean>
Boolean 类型的 Nullable 值,它指定活动是被接受 (true) 还是被取消 (false)。返回值是窗口关闭前 DialogResult 属性的值。
问题是ShowDialog
is nullable的结果。
但是,您可以通过使用更详细== true
的方法来纠正这个问题,然后编译器会理解您想要明确知道它是真的,而不是 null 或 false。不要问我为什么它不喜欢速记版本(我必须深入研究规格)。
无论哪种方式,这是您的解决方案:
if (openFileDialog.ShowDialog() == true && viewModel....)
推荐阅读
- c - 为什么我的函数不能接受用户输入?
- python - 属性 send_keys.(ARROW_DOWN) 和 context_click(clique) 不起作用
- c# - 如何为 Turtle Graphics 读取 lgo 文件(例如左、右等)上的文本
- python - Dropout 在 Pytorch 上的训练模式下不起作用
- python - Pygame 计时器错误(数字打印在彼此之上)
- memory-management - 如果有的话,CPython 中使用的堆栈是什么?
- node.js - 安装 lite-server 时显示漏洞
- android - 无法执行我导入到我的 Android 操作系统项目中的二进制文件 - 出现 Permission Denied 错误
- python - 如何通过超参数调整来改进这个模型
- python-3.x - 我需要定义一个函数来输入一个值,然后调用该函数并打印它