2011-07-22 94 views
1

我想将MSFlexGrid升级到.net datagridview, 这些代码的等效代码是什么?将VB6 MSFlexGrid升级到VB.NET

With gridview 
    If .Row > .FixedRows Then 
     bDoNotEdit = True 
     .Row = .Row - 1 
     bDoNotEdit = False 
    End If 
    If .Row < .Rows - 1 Then 
     bDoNotEdit = True 
     .Row = .Row + 1 
     bDoNotEdit = False 
    End If 
End With 
+1

[你如何从Visual Basic 6.0迁移庞大的应用VB.NET?](http://stackoverflow.com/questions/395/how-do-you-migrate-a-large-app - 从视觉碱性-6-0至VB-净) –

回答

0

在VS 2008和更早的版本可以迁移VB6应用程序到.NET,也不会使用.NET成语(特别是更好的绑定功能)。 VS2010删除了迁移向导。这里真正的问题是你试图用这个代码完成的最终目标是什么?通常最好重新考虑/重写问题,而不是仅仅使用默认的迁移代码。我发现通过使用.Net数据绑定对象可以清除数千行代码的项目。

另外,要意识到只是因为迁移的代码可能编译,它可能不会做同样的事情。尤其要注意数组或数学函数使用布尔结果的下界的一个错误。

0

使用数据网格视图。

代码段假定您已经创建了一个名为“SubmittedDataGridView”的datagridview控件,并在设计时在IDE中创建了列,或者在您到达此处之前在运行时指定了它们。

我不知道变量“bDoNotEdit”是指还是被用于,所以我忽略了它。

'step one, create a datagridrow 
Dim aRow As New System.Windows.Forms.DataGridViewRow 

'Step two, create a prototypical Row from the datagridview control 
aRow.CreateCells(SubmittedDataGridView) 

'Step Three, specify the values 
aRow.Cells(0).Value = "value one" 
aRow.Cells(1).Value = "Value two" 
aRow.Cells(2).Value = "value three" 

'Append the row to the DataGridView 
SubmittedDataGridView.Rows.Add(aRow)