【问题标题】:How do I make a Button in VB.NET Allow a User to Select a File?如何在 VB.NET 中制作按钮允许用户选择文件?
【发布时间】:2012-10-21 01:08:11
【问题描述】:

我正在 Visual Basic Express Edition 2010 中制作 Crypter,但遇到了一些问题。我正在尝试使用户单击 GUI 中的按钮,并允许他们选择要 Crypt 的文件。有没有人对如何做到这一点有任何想法?这是我最初用来制作它的代码,但它不起作用:(感谢所有帮助!

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) Handles Button1.Click
    With OpenFileDialog1
        .FileName = ""
        .Filter = "Executables (*.exe)|*.exe|All files (*.*)|*.*"
        .Title = "The Justice Crypter"
        .ShowDialog()
        TextBox1.Text = .FileName
        infectedfile = TextBox1.Text
    End With
End Sub

谢谢大家。

【问题讨论】:

  • 在 GUI 上,用户单击打开他们想要加密的文件的按钮,但是没有显示他们的文件夹,而是 [FileName = ""] 出现错误并且它不会让用户访问他们的文件。请帮忙! :)
  • 你用什么来为你的 OpenFileDialog WPF 没有我知道的原生的?
  • Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.Windows.RoutedEventArgs) 使用 OpenFileDialog1 处理 Button1.Click
  • NullReferenceException 未处理
  • 也....对象变量或未设置块变量。

标签: .net wpf vb.net


【解决方案1】:

OpenFileDialog 是对我有用的 Win32 控件的 WPF 包装器。

Class MainWindow 
    Dim WithEvents openFileDialog1 As New Microsoft.Win32.OpenFileDialog
    Private Sub Button1_Click(sender As System.Object, e As System.Windows.RoutedEventArgs) Handles Button1.Click
        With OpenFileDialog1
            .FileName = ""
            .Filter = "Executables (*.exe)|*.exe|All files (*.*)|*.*"
            .Title = "The Justice Crypter"
            .ShowDialog()
            TextBox1.Text = .FileName
            'infectedfile = TextBox1.Text
        End With
    End Sub
End Class

【讨论】:

  • 我现在在 .FileName = "" 处收到错误消息:对象变量或未设置块变量。它的类型相同,一个 NullReference
  • @user1760869 我不确定你在做什么,你在哪里声明你的 OpenFileDialog 它需要是一个模块级对象。上面的代码确实有效我在发布之前检查了它
  • 你修好了,非常感谢马克。另外,我只想指定,当您将 Dim WithEvents openFileDialog1 As New Microsoft.Win32.OpenFileDialog 声明为新的 Microsoft.Win32.OpenFileDialog 时,我的程序将保持 64 位吗?
  • @user1760869 这是一个非常好的问题,我在上面编译为 64 位,它运行没有错误。
  • @user1760869 - 如果合适,不要忘记将其标记为答案。
【解决方案2】:

OpenFileDialog1 为空。
您需要将其初始化为New OpenFileDialog()

【讨论】:

  • 让我具体说明发生了什么。我使用的代码是这样的:
猜你喜欢
  • 1970-01-01
  • 2016-04-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-01-25
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多