本人精通C#编程,VB没有开发经验,项目维护需要,特意整理了下VB语法,进行恶补。编程思想都是互通的,都是微软生的,语言大同小异。

Imports System

一、(1)定义一个变量,并且初始化。 Dim strText As String = "" 
         或 者 Dim strText As String strText="" 
    (2)实例化一个类或对象 Dim openFileDialog1 As New OpenFileDialog() Dim clsClass As New ClsClass()
(3)声明一个数组 Dim fileNames As String() = New String(3) {}
fileNames(0)="张 三 " fileNames(1)="李 四" fileNames(2)="王 五"
    (4)声明一个泛型类型 Dim list As New List(Of T)()

二、异常处理。 
Try Catch ex As Exception 
    Throw New Exception(ex.Message, ex)
 End Try 
三、 条件判断语句
 If...Then
...
ElseIf...Then
...
Else ... End if 
四、循环数组和集合 
For i As Integer = 0 To openFileDialog1.FileNames.Length - 1 
//exit for 
Next 
For Each item In List
//exit for
 Next 
五、过程和函数
 Public Sub 函数名称(ByVal/ByRef 参数名 As Integer) as 类型 
End Sub 
Public Function 函数名称(ByVal/ByRef 参数名 As Integer) as 类型
 'vb6.0 带返回值的函数写法 
 Dim str1 As String = "111" 
'Result = str1  
'也可以用vb.net中的关键值Return返回即可。 
 Dim str2 As String = "222"
 Return str2 
End Function 
六、vb.net 中的模块(Module),一般用途一般只用来定义全局变量和公用方法。 
Class ClassName 
public shared Function fnXXX() as string ' shared指的是静态方法相当于C#里面的Static关键字。   
... 
End Function 
End Class 类似
直接使用ClassName.fnXXX()调用。 也可以直接fnXXX()调用
Module ModuleName 
public Function fnXXX() as string 
... 
End Function 
End Module
 调用:ModuleName.fnXXX()。也可以fnXXX()直接调用。
-------------------------------------------------------------------------------------------
模块(Module)里面可以直接有方法,这些方法自动就是静态的(或者称为共享的——VB.NET中的关键字是Shared),这些方法可以直接调用,所以Module是无法实例化,也没有必要实例化的
模块无法继承,也无法实现接口
模块里面可以有类,但其实这个类并不需要真的通过模块作为前缀来引用。所以模块有点虚的概念
模块可以被组织到命名空间中去,因为模块其实是个虚的,所以它的方法也可以直接外层的命名空间调用。 七、多个相同事件,同用同一个事件。
VB.NET
Private Sub rdbFeedChannelAny_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles rdbFeedChannel1.Click, rdbFeedChannel2.Click, rdbFeedChannel3.Click
 Exit Sub 
C#
Designer
this.radioButton1.CheckedChanged += new System.EventHandler(radioButton_CheckedChanged);
this.radioButton2.CheckedChanged += new System.EventHandler(radioButton_CheckedChanged); Code;
private void radioButton_CheckedChanged(object sender, EventArgs e)
{ if(this.radioButton1.Checked)
{ }
}
八、Overloads 关键字,实现重载函数。
class1
  Overloads Public Sub New() //构造函数。
  。。。。。。
  。。。。。。
  end sub   
Overloads Public Sub New(s as string)
  。。。。。。
  。。。。。。
  end sub
end Class 
九、
withevents用于声明对象,用它声明的对象拥有自己的事件。当这个对象内部有RaiseEvent的时候,外部就会接收到。
handles就是接收这个withevents对象事件用的。比如你的一个对象有一个事件A,在执行的过程中,这个对象RaiseEvent A,那么调用者的handles 对象.A 的SUB就会被执行。

VB.NET语法小结的更多相关文章

  1. [转]c#.NET和VB.NET语法的比较

    本文转自:http://www.cnblogs.com/lify0407/archive/2007/08/01/838589.html c#.NET和VB.NET语法的比较   VB.NET C# C ...

  2. ASP.NET Razor C# 和 VB 代码语法

    ylbtech-.NET: ASP.NET Razor  C# 和 VB 代码语法 Razor 不是一种编程语言.它是服务器端的标记语言. 1. C# 和 VB 代码语法返回顶部 Razor 同时支持 ...

  3. IT兄弟连 HTML5教程 HTML5的基本语法 小结及习题

    小结 一个完整的HTML文件由标题.段落.列表.表格.文本,即嵌入的各种对象所组成,这些逻辑上统一的对象称为元素.HTML文档主体结构分为两部分,一部分是定义文档类型,另一部分则是定义文档主体的结构框 ...

  4. XML语法小结

    语法结构主要要求: (1)有且仅有一个根元素. 根元素也称文档元素,整个 XML 文档的其他元素都包含在根元素中,并通过嵌套形成树 型结构.除了根元素外,其他元素都是子元素. (2)每个元素必须有开始 ...

  5. Markdown基础语法小结

    一.前言 Markdown是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式. --摘自百度百科 没想到一向不太靠谱的百度百科这次竟有了如此精辟的解释. ...

  6. python的语法小结

    break 与continue的区别: 1.break是直接中断全部循环 2.continue则是在只不执行此次所循环的东西,其它循环依旧执行,比方说只是跳过第4次循环,第5次循环照常进行. \n 表 ...

  7. [MarkDown] markdown语法小结

    目录 写在前面 目录 特殊字符自动转换 段落和换行 第一阶标题 第二阶标题显示效果有下划线 H1 H2有下划线 H3 区块引用 列表 代码区块 分割线 链接 强调 删除线 代码 图片 反斜杠 表格 g ...

  8. Markdown基本语法小结

    目录 Typore Markdown基本语法 1.标题 一级标题 二级标题 三级标题 2.字体加粗 3.斜体 4.文本高亮 5.上标 6.下标 7.引用代码 1 8.代码引用2 9.代码引用3 10. ...

  9. [sh]shell语法小结

    参考 基础语法 数字比较 -lt -eq -gt [ `ps -ef|grep nginx|grep -v grep|wc -l` -eq 0 ] str比较 == != [ $USER == &qu ...

随机推荐

  1. nginx简单权限配置

    一.指定ip段 location / { allow 172.17.0.1/24; deny all; } 二.指定认证账户 location / { auth_basic "please ...

  2. ios 导航push跳转方向设置

    CATransition* transition = [CATransition animation]; transition.type = kCATransitionPush;//可更改为其他方式 ...

  3. Paper/ Overview | CNN(未完待续)

    目录 I. 基础知识 II. 早期尝试 1. Neocognitron, 1980 2. LeCun, 1989 A. 概况 B. Feature maps & Weight sharing ...

  4. python之路(六)-函数相关

    在没有学习函数之前我们的程序是面向过程的,不停的判断,不停的循环,同样的代码重复出现在我们的代码里.函数可以更好的提高我们的 代码质量,避免同样的代码重复出现,而只需要在用的时候调用函数即可执行.此为 ...

  5. Python学习第三章

    1.模块: 其实每个.py文件本身就是一个模块,当读者做完了一个.py文件,如果别人打算直接分享你的成果,只要在他编写的.py文件中倒入(import)就好了. 比如想在hello1.py文件里直接使 ...

  6. Gitlab配置、备份、升级、迁移

    0.Gitlab安装 1.安装和配置必要的依赖关系 在CentOS7,下面的命令将在系统防火墙打开HTTP和SSH访问. yum install curl openssh-server postfix ...

  7. 595. Big Countries --- SQL related from leetcode

    595. Big Countries There is a table World +-----------------+------------+------------+------------- ...

  8. SQL Server 最大并行度

    一.概念 1.关联掩码(affinitymask) 为了执行多任务,MicrosoftWindows2000和WindowsServer2003有时会在不同的处理器之间移动进程线程.虽然从操作系统方面 ...

  9. MyBatis 源码分析 - 插件机制

    1.简介 一般情况下,开源框架都会提供插件或其他形式的拓展点,供开发者自行拓展.这样的好处是显而易见的,一是增加了框架的灵活性.二是开发者可以结合实际需求,对框架进行拓展,使其能够更好的工作.以 My ...

  10. 【spring源码分析】IOC容器初始化——查漏补缺(一)

    前言:在[spring源码分析]IOC容器初始化(十一)中提到了初始化bean的三个步骤: 激活Aware方法. 后置处理器应用(before/after). 激活自定义的init方法. 这里我们就来 ...