字符串和系统窗体对话框之间没有隐式转换
本文关键字:转换 之间 系统 窗体 对话框 字符串 | 更新日期: 2023-09-27 17:51:03
我得到错误。我喜欢在点击按钮
后,如果单元格为空,则显示消息对话框 var name = dataGridView1.Rows[0].Cells[1].Value != null ? dataGridView1.Rows[0].Cells[1].Value.ToString() : MessageBox.Show("Cell is empty") ;
你不能那样做。因为文档说:
first_expression和second_expression的类型必须是相同的,或者存在从一种类型到另一种类型的隐式转换。
使用if
语句代替:
string name;
if(dataGridView1.Rows[0].Cells[1].Value == null)
{
MessageBox.Show("Cell is empty");
}
else
{
name = dataGridView1.Rows[0].Cells[1].Value.ToString();
}
请不要这样做,Selman22的回答应该是正确的。
但只是为了好玩:(返回值"OK", "取消"等当消息框显示)
var name = dataGridView1.Rows[0].Cells[1].Value != null ? dataGridView1.Rows[0].Cells[1].Value.ToString() : new Func<string>(() => MessageBox.Show("Cell is empty").ToString())();