starxzj 发表于 2018-8-23 07:28:51

14 使用System.Windows.Forms.OpenFileDialog类

  大家好,在PowerShell中,使用的GUI元素,以请求用户输入。
  它是可以从头开始创建自己的表单,也有许多有用的预先内置对话框。
  在这篇文章中,我将向你展示如何使用System.Windows.Forms.OpenFileDialog选择一个或多个文件。
  下面的代码将打开一个窗口,将提示用户选择一个文件。InitialDirectory属性设置,启动目录将被设置为当前用户的桌面。
  这是通过使用[环境]台式机特殊的文件夹:
Add-Type -AssemblyName System.Windows.Forms  
$FileBrowser = New-Object System.Windows.Forms.OpenFileDialog -Property @{
  
InitialDirectory = ::GetFolderPath('Desktop')
  
}
  
$FileBrowser.ShowDialog()
  
$FileBrowser.FileNames

  如果文件需要被选中,它可以通过设置过滤器,设置起始文件夹的文件夹,这样我们就可以确保只有特定类型的文件被选中。
  下面的代码示例将允许用户选择.docx文件。过滤器可以改变用户还可以选择一个xlsx文件:
Add-Type -AssemblyName System.Windows.Forms  
$FileBrowser = New-Object System.Windows.Forms.OpenFileDialog -Property @{
  
InitialDirectory = ::GetFolderPath('MyDocuments')
  
Filter = 'Documents (*.docx)|*.docx|SpreadSheet (*.xlsx)|*.xlsx'
  
}
  
$FileBrowser.ShowDialog()
  
$FileBrowser.FileNames
  要选择多个文件MultiSelect属性设置为True。
Add-Type -AssemblyName System.Windows.Forms  

  
$FileBrowser = New-Object System.Windows.Forms.OpenFileDialog -Property @{
  
Multiselect = $true
  
}
  

  
$FileBrowser.ShowDialog()
  
$FileBrowser.FileNames
  这个类的更多信息,可以使用下面的MSDN文章:
  http://msdn.microsoft.com/zh-cn/library/system.windows.forms.openfiledialog.aspx
  希望大家和Cantgis 一起掌握此类的使用方法。


页: [1]
查看完整版本: 14 使用System.Windows.Forms.OpenFileDialog类