天天看點

<Power Shell>14 使用System.Windows.Forms.OpenFileDialog類

大家好,在PowerShell中,使用的GUI元素,以請求使用者輸入。

它是可以從頭開始建立自己的表單,也有許多有用的預先内置對話框。

在這篇文章中,我将向你展示如何使用System.Windows.Forms.OpenFileDialog選擇一個或多個檔案。

下面的代碼将打開一個視窗,将提示使用者選擇一個檔案。InitialDirectory屬性設定,啟動目錄将被設定為目前使用者的桌面。

這是通過使用[Environment][環境]桌上型電腦特殊的檔案夾:

1

2

3

4

5

6

<code>Add-Type</code> <code>-AssemblyName</code> <code>System.Windows.Forms</code>

<code>$FileBrowser</code> <code>= </code><code>New-Object</code> <code>System.Windows.Forms.OpenFileDialog</code> <code>-Property</code> <code>@{</code>

<code>    </code><code>InitialDirectory = </code><code>[Environment]</code><code>::GetFolderPath(</code><code>'Desktop'</code><code>)</code>

<code>}</code>

<code>[void]</code><code>$FileBrowser</code><code>.ShowDialog()</code>

<code>$FileBrowser</code><code>.FileNames</code>

<a target="_blank" href="http://blog.51cto.com/attachment/201307/140212813.png"></a>

如果檔案需要被選中,它可以通過設定過濾器,設定起始檔案夾的檔案夾,這樣我們就可以確定隻有特定類型的檔案被選中。

下面的代碼示例将允許使用者選擇.docx檔案。過濾器可以改變使用者還可以選擇一個xlsx檔案:

7

<code>    </code><code>InitialDirectory = </code><code>[Environment]</code><code>::GetFolderPath(</code><code>'MyDocuments'</code><code>)</code>

<code>    </code><code>Filter</code> <code>= </code><code>'Documents (*.docx)|*.docx|SpreadSheet (*.xlsx)|*.xlsx'</code>

要選擇多個檔案MultiSelect屬性設定為True。

8

<code>                                                      </code> 

<code>    </code><code>Multiselect = </code><code>$true</code>

這個類的更多資訊,可以使用下面的MSDN文章:

<a href="http://msdn.microsoft.com/zh-cn/library/system.windows.forms.openfiledialog.aspx">http://msdn.microsoft.com/zh-cn/library/system.windows.forms.openfiledialog.aspx</a>

希望大家和Cantgis 一起掌握此類的使用方法。

     本文轉自cantgis 51CTO部落格,原文連結:http://blog.51cto.com/cantgis/1239294,如需轉載請自行聯系原作者