Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/33.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
Asp.net 使用ref将GridView列传递给方法_Asp.net_Gridview_Ref_Byref - Fatal编程技术网

Asp.net 使用ref将GridView列传递给方法

Asp.net 使用ref将GridView列传递给方法,asp.net,gridview,ref,byref,Asp.net,Gridview,Ref,Byref,因此,我正在进行从VB到C#web应用程序的迁移,遇到了一个问题,我希望有一个简单的解决方法。有一个webform使用GridView控件。在代码中,它将columns集合传递到一个方法中,该方法根据用户、权限和环境动态添加列。因此,使用ByRef将列传递到VB中的函数中,如下所示: Public Sub PopulateColumns(ByRef ColumnCollection As DataControlFieldCollection) 'Do something End Sub

因此,我正在进行从VB到C#web应用程序的迁移,遇到了一个问题,我希望有一个简单的解决方法。有一个webform使用GridView控件。在代码中,它将columns集合传递到一个方法中,该方法根据用户、权限和环境动态添加列。因此,使用ByRef将列传递到VB中的函数中,如下所示:

Public Sub PopulateColumns(ByRef ColumnCollection As DataControlFieldCollection)
    'Do something
End Sub
现在在C#中,我使用了ref关键字,但是columns集合没有setter。我最快的解决方法是什么?我将很快将其转换为jQuery网格,因此我不关心最佳实践,而只是让它工作起来

这里是C#:

这就是所谓的

.PopulateColumns(ref EmployeeGridView.Columns)

集合已经是ByRef,因此不需要ref参数

所以,除非我有一个金发女郎的时刻,否则你只需要做:

public void PopulateColumns(DataControlFieldCollection columnCollection)
{
    // Something here
}

.PopulateColumns(EmployeeGridView.Columns)

测试和工作。

不太清楚为什么以前是ByRef。谢谢你拯救了我的金发时刻!
public void PopulateColumns(DataControlFieldCollection columnCollection)
{
    // Something here
}

.PopulateColumns(EmployeeGridView.Columns)