0

所以我正在处理这个从 VB 到 C# Web 应用程序的迁移,遇到了一个我希望可以轻松解决的问题。有一个使用 GridView 控件的网络表单。在代码中,它将列集合传递给一个方法,该方法根据用户、权限和环境动态添加列。因此,这些列使用 ByRef 传递到 VB 中的函数中,如下所示:

Public Sub PopulateColumns(ByRef ColumnCollection As DataControlFieldCollection)
    'Do something
End Sub

现在在 C# 中,我使用了 ref 关键字,但列集合没有设置器。我最快的解决方法是什么?我将很快将其转换为 jQuery 网格,因此我不关心最佳实践,而只是让它工作。

这是在 C# 中:

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

就是这样称呼的...

.PopulateColumns(ref EmployeeGridView.Columns)
4

1 回答 1

2

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

所以,除非我有一个金发的时刻,你只需要这样做:

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

.PopulateColumns(EmployeeGridView.Columns)

测试和工作。

于 2009-10-30T15:59:23.123 回答