Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 检查对象是空的还是空的_C#_.net_Winforms_Datagridview - Fatal编程技术网

C# 检查对象是空的还是空的

C# 检查对象是空的还是空的,c#,.net,winforms,datagridview,C#,.net,Winforms,Datagridview,我有一个DataGridView,并在索引0处添加了一个名为SellQty的列和一个复选框。当用户选择复选框时,必须输入int值。如果没有,我将显示一条消息以输入值。现在的问题是,我从SellQty单元格中获取值,并将其存储在对象中,然后检查它是否为null object SellQty = gvProductBatch.Rows[i].Cells["txtSellQty"].Value; if(SellQty!=null) // do something else // .

我有一个
DataGridView
,并在索引0处添加了一个名为
SellQty
的列和一个
复选框。当用户选择
复选框时,必须输入
int
值。如果没有,我将显示一条消息以输入值。现在的问题是,我从
SellQty
单元格中获取值,并将其存储在
对象中,然后检查它是否为
null

object SellQty = gvProductBatch.Rows[i].Cells["txtSellQty"].Value;
if(SellQty!=null)
    // do something

else 
    // ..Show message.

这个很好用。但问题是,当用户输入一个值并将其删除时,其中存储的值是
{}
,即为空。我想知道如何检查对象是否为空。我在谷歌上搜索过同样的问题,但没有找到处理空对象的答案。如果对象为空,则所有结果都适用。

您可以使用
.EditedFormattedValue

if (string.IsNullOrWhiteSpace(gvProductBatch.Rows[i].Cells["txtSellQty"].EditedFormattedValue.ToString())
{
  //Do something
}

将对象类型转换为字符串,然后检查它是否为null或空…您的意思是值
{}
是一个
DBNull
。因此,您可以检查例如
如果(SellQty==DBNull.Value)
当它是
字符串时,为什么将其另存为
对象
?可以将其分配给字符串
gvProductBatch.Rows[i]。单元格[“txtSellQty”]。值为字符串
,然后使用
字符串进行检查。IsNullOrEmpty
method@StuartDunkeld,V4Vendetta-如果用户通过选择条目并点击空格来清除条目,该怎么办?我使用的是3.5.Anywaz,我使用的是NullorEmpty,效果很好。谢谢,伙计。你能解释一下这行代码吗。这里的参考资料将向你解释。欢迎
:)
已完成。谢谢。我已更改了整个模块中的验证和计算。效果非常好。当用户在整个模块中输入一个空格时,我并没有处理这个异常。现在它工作得很好,你们可以这样使用<代码>如果(gvProductBatch.Rows[i].Cells[“txtSellQty”].EditedFormattedValue.ToString().Trim().Length==0){//Do something}