把C#代码改写为VB代码的问题(关于OnInit的).
在网上down了一页C#代码, 想把它改写为VB的,可当中有一段,我修改不成功.请高手指点.
这是显示数据的控件页.
源代码:
override protected void OnInit(EventArgs e)
{
this.Load += new System.EventHandler(this.Page_Load);
// Here I wire up the index changed events of the two pagers
// to use the same page change method.
this.TopPager.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.Pager_PageIndexChanged);
this.BottomPager.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(this.Pager_PageIndexChanged);
base.OnInit(e);
}
我自已改写的代码:
protected Sub OnInit(Byval e as EventArgs)
Load += new System.EventHandler(Page_Load)
TopPager.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(Pager_PageIndexChanged);
BottomPager.PageIndexChanged += new System.Web.UI.WebControls.DataGridPageChangedEventHandler(Pager_PageIndexChanged);
base.OnInit(e)
End Sub
调试时,程序提示:
Compilation Error
Description: An error occurred during the compilation of a resource required to service this request. Please review the following specific error details and modify your source code appropriately.
Compiler Error Message: BC32022: 'Public Event Load(sender As Object, e As System.EventArgs)' is an event, and cannot be called directly. Use a 'RaiseEvent' statement to raise an event.
请问要怎样修改,才可调试成功?谢谢.
问题点数:30、回复次数:11Top
1 楼softbugg()回复于 2005-02-16 11:57:17 得分 5
this.Load += new System.EventHandler(this.Page_Load);
改为AddHandle试试Top
2 楼apanda(熊猫)回复于 2005-02-16 11:57:29 得分 5
c# this.Load += new System.EventHandler(this.Page_Load);
vb AddHandler me.Load, New EventHandler(AddressOf Me.Page_Load)Top
3 楼hedonister(冰戈)回复于 2005-02-16 12:02:41 得分 10
顺便给你个网址 http://www.developerfusion.com/utilities/convertcsharptovb.aspx
Protected Overloads Overrides Sub OnInit(ByVal e As EventArgs)
Me.Load += New System.EventHandler(Me.Page_Load)
Me.TopPager.PageIndexChanged += New System.Web.UI.WebControls.DataGridPageChangedEventHandler(Me.Pager_PageIndexChanged)
Me.BottomPager.PageIndexChanged += New System.Web.UI.WebControls.DataGridPageChangedEventHandler(Me.Pager_PageIndexChanged)
MyBase.OnInit(e)
End SubTop
4 楼wenquan_nn(求学者)回复于 2005-02-16 12:04:42 得分 0
哈哈~~本人跟你相反,一般都是讲vb改成c#的!!
这么一说还有个问题想请教,vb中的select ..... end select 是什么意思,
如何转成c#?Top
5 楼greykevin(类)回复于 2005-02-16 12:38:59 得分 5
请看:
http://www.developerfusion.com/utilities/convertvbtocsharp.aspxTop
6 楼flashagain(其实大家都各有所长)回复于 2005-02-16 12:58:38 得分 5
http://item.365key.com/124/124671.shtmTop
7 楼nnh(菲一打)回复于 2005-02-16 14:26:45 得分 0
上边给我代码我试了,还有到网页上通过C#转VB,可是都不成功.
还有高手帮忙吗?Top
8 楼heaven(heaven)回复于 2005-02-16 14:32:21 得分 0
override protected void OnInit(EventArgs e)
Web 窗体设计器生成的代码,你去改这些也没意义啊.
VB.net会自动生成的.
Top
9 楼nnh(菲一打)回复于 2005-02-16 15:14:10 得分 0
override protected void OnInit(EventArgs e)
Web 窗体设计器生成的代码,你去改这些也没意义啊.
你说的是错的,如果你把这段代码删除的话,那么程序就会出错的.Top
10 楼nnh(菲一打)回复于 2005-02-17 09:54:43 得分 0
upTop
11 楼heaven(heaven)回复于 2005-02-17 12:32:26 得分 0
我没让你去删啊.
#Region " Web 窗体设计器生成的代码 "
'该调用是 Web 窗体设计器所必需的。
<System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
End Sub
Protected WithEvents Menu As System.Web.UI.WebControls.Label
'注意: 以下占位符声明是 Web 窗体设计器所必需的。
'不要删除或移动它。
Private designerPlaceholderDeclaration As System.Object
Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
'CODEGEN: 此方法调用是 Web 窗体设计器所必需的
'不要使用代码编辑器修改它。
InitializeComponent()
End Sub
#End RegionTop




