【发布时间】:2010-01-15 10:43:14
【问题描述】:
在 Form1 中我有一个 Textbox1,在这个文本框中我有一个文件“C:\folder\file.iso”的位置
在 Form2 中,我想获取 Textbox1 中文件的文件大小,所以我尝试了这个
Dim fileDetail As IO.FileInfo
fileDetail = My.Computer.FileSystem.GetFileInfo(Form1.Textbox1.Text)
Label1.Text = Size: fileDetail.Length
End Sub
我没有收到错误,但标签中没有显示文件的大小。
编辑:这似乎不起作用
Private Sub Unscramble_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
If System.IO.File.Exists(Form1.TextBox2.Text) Then
Dim fi As New System.IO.FileInfo(Form1.TextBox2.Text)
Label3.Text = "Size: " & fi.Length.ToString()
End If
End Sub
它仍然没有给我文件的大小,也没有给出“大小:”
【问题讨论】:
-
您确定要将该事件附加到表单加载而不是单击按钮吗?
-
是的,因为这个表格会在“转换”过程完成时弹出。
-
所以文本框中的文件不存在! :) 在 if 条件行中设置一个断点并测试您的“Textbox1.Text”文件是否存在。
-
对不起,但说真的,你是做什么的?为什么要在Load方法中测试呢?为什么要用Form1.TextBox,有没有在Form1类上初始化一个共享文本框? 将
Form1.TextBox2.Text临时替换为"C:\boot.ini",看看会发生什么。 -
好的,我以当前形式制作了一个文本框:Unscramble,它给了我尺寸 Dim fileDetail = My.Computer.FileSystem.GetFileInfo(Textbox1.Text) Label1.Text = "Size : " & fileDetail .Length 但是当我想要文件在另一种形式的文本框中的位置时,它会给我一个错误 Dim fileDetail = My.Computer.FileSystem.GetFileInfo(form1.Textbox1.Text) Label1.Text = "Size : " & fileDetail.长度
标签: vb.net