C#从方法返回类型
如果我有一个返回datagridview的方法,并且流程与此类似:C#从方法返回类型,c#,methods,C#,Methods,如果我有一个返回datagridview的方法,并且流程与此类似: if (ds.Tables.Count == 0) { SharedMethods.updateStatus("There are no excluded results to display"); //return dgv; } else { dgv.DataSource = ds.Table
if (ds.Tables.Count == 0)
{
SharedMethods.updateStatus("There are no excluded results to display");
//return dgv;
}
else
{
dgv.DataSource = ds.Tables[0];
dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;
dgv.AllowUserToAddRows = false;
return dgv;
}
如果If条件为true,那么我不想返回datagridview(因为没有数据),在这种情况下我可以返回什么?如果我返回null,则调用方法具有null datagridview,这会导致以后的问题
谢谢。你可以
null
并为调用方添加null
的特殊情况处理IEnumerables
一起使用,但我不知道您的返回类型是否支持它。如果您希望在第一种情况下的行为与查询没有结果时的行为相同,则此解决方案是最好的。您可以
null
并为调用方添加null
的特殊情况处理您通常将3)与
IEnumerables
一起使用,但我不知道您的返回类型是否支持它。如果您希望在第一种情况下的行为与查询结果相同,则此解决方案是最好的。在我看来,您有两种解决方案:
DataGridView
,并用它修改调用代码DataGridView
,但数据源为空(因为没有数据),并确保调用代码能够处理该问题就我个人而言,我会选择2。您仍然有一个视图但没有数据,因此您仍然需要一个
DataGridView
但它是空的。在我看来,您有两种解决方案:
DataGridView
,并用它修改调用代码DataGridView
,但数据源为空(因为没有数据),并确保调用代码能够处理该问题就我个人而言,我会选择2。您仍然有一个视图但没有数据,因此仍然需要一个
DataGridView
,但它是空的。我不会从数据绑定方法返回任何内容。你为什么需要这个?(这段代码甚至不会编译,因为true块没有要返回的内容。)
只需将其设置为一个方法。我不会从数据绑定方法返回任何内容。你为什么需要这个?(这段代码甚至不会编译,因为true块没有要返回的内容。)
只需将其设置为一个方法。您可以将该方法的返回类型设置为返回错误代码(
enum
),并将DataGridView
作为out
或ref
参数。您可以将该方法的返回类型设置为返回错误代码(enum
)并将DataGridView
作为out
或ref
参数。如果没有要显示的内容,请将网格的Visible属性设置为false。如果没有要显示的内容,请将网格的Visible属性设置为false。如果不想返回任何内容或数据库,请不要将其用作数据库方法。只需将它设为空,并让它填充常规属性或不填充。无论如何,您应该在调用代码时处理它。正确。将Visible属性设置为false。@Hans,谢谢。工作完美,非常简单。如果你把它变成一个答案,我会接受它。如果你不想返回任何东西或数据库,不要把它用作数据库方法。只需将它设为空,并让它填充常规属性或不填充。无论如何,您应该在调用代码时处理它。正确。将Visible属性设置为false。@Hans,谢谢。工作完美,非常简单。如果你把这变成一个答案,我会接受它。我认为这里最好的选择是3。我认为这里最好的选择是3。