[VB.NET]openFileDialog控件的问题:以下两种代码哪个更优化一些?

openFileDialog控件的问题:以下两种代码哪个更优化一些? 我在msdn中看到的示例: Private Sub button1_Click(sender As Object,e As System.EventArgs) Dim myStream As Stream Dim openFileDialog1 As New OpenFileDialog() openFileDialog1.InitialDirectory = "c:/ " openFileDialog1.Filter = "txt files (*.txt)|*.txt|All files (*.*)|*.* " openFileDialog1.FilterIndex = 2 openFileDialog1.RestoreDirectory = True If openFileDialog1.ShowDialog() = DialogResult.OK Then myStream = openFileDialog1.OpenFile() If Not (myStream Is nothing) Then '' Insert code to read the stream here. myStream.Close() End If End If End Sub 其中Dim myStream As Stream其实要改为io.Stream 我不明白这些繁琐的定义有什么做为,因为我认为openfiledialog本身就是一个控件,为什么不能直接对它进行操作而要另外引用一个对象变量来进行操作?后来我自己改了一下: Private Sub openF_Click(ByVal sender As System.Object,ByVal e As System.EventArgs) Handles openF.Click OpenFileDialog1.InitialDirectory = "c: " OpenFileDialog1.FileName = " " OpenFileDialog1.Filter = "图片文件 (*.BMP)| " OpenFileDialog1.ShowDialog() End Sub 我想效果是一样的,但这个代码还有一个问题就是:当前对话框列表会显示所有类型的文件,如何做到,让对话框里只显示扩展名为BMP的文件? __________________________________________________________________________ OpenFileDialog1.Filter = "图片文件(BMP)|*.bmp " ''设置打开文件类型过滤器 __________________________________________________________________________ 你的Filter 设置错误了,必须要有前后分隔符号 例如: OpenFileDialog1.Filter = "jpg文件 (*.jpg)|*.jpg;*.jpeg|bmp文件 (*.bmp)|*.bmp|gif文件 (*.gif)|*.gif|支持的三种图形 (*.gif)|*.gif;*.bmp;*.jpeg;*.jpg " 前面的是说明,|后边的才是具体类型。 可以写多个,就是下拉框的效果了 __________________________________________________________________________ 一样的 只是第一个示例比第二个全面点 __________________________________________________________________________ 你的Filter书写有误 openFileDialog1.Filter = "图片文件(BMP)(*.bmp)|*.bmp " 第一个是在打开对话框时进行了一些初使化,比如 openFileDialog1.InitialDirectory = "c:/ " 认打开的是c盘 你不显示对它进行初始化,它会用缺省值对它进行初使化的 __________________________________________________________________________ 你的代码有区别么? __________________________________________________________________________

相关文章

Format[$] ( expr [ , fmt ] ) format 返回变体型 format$ 强...
VB6或者ASP 格式化时间为 MM/dd/yyyy 格式,竟然没有好的办...
在项目中添加如下代码:新建窗口来显示异常信息。 Namespace...
转了这一篇文章,原来一直想用C#做k3的插件开发,vb没有C#用...
Sub 分列() ‘以空格为分隔符,连续空格只算1个。对所选...
  窗体代码 1 Private Sub Text1_OLEDragDrop(Data As Dat...