http://i.minus.com/i3xuoWZkpfxHn.pngWPF中的文件選擇器對話框在哪裏?
我沒有看到任何可以讓我從我的電腦挑選的文件...必須有一個,它在哪裏?我可能錯過了一個參考?
編輯:我腦子裏想的是什麼與它旁邊有一個「瀏覽」按鈕,一個文本框。它現在發生在我身上,我可能必須放置文本框和瀏覽按鈕我自己,並添加一個單擊事件按鈕打開對話框...
http://i.minus.com/i3xuoWZkpfxHn.pngWPF中的文件選擇器對話框在哪裏?
我沒有看到任何可以讓我從我的電腦挑選的文件...必須有一個,它在哪裏?我可能錯過了一個參考?
編輯:我腦子裏想的是什麼與它旁邊有一個「瀏覽」按鈕,一個文本框。它現在發生在我身上,我可能必須放置文本框和瀏覽按鈕我自己,並添加一個單擊事件按鈕打開對話框...
沒有內置的控件具有文本框與[瀏覽]按鈕旁邊。你必須自己設定。
對於「打開文件」對話框本身,有OpenFileDialog
in Microsoft.Win32 namespace。
出於好奇,Microsoft.Win32命名空間中的OpenFileDialog與System.Windows.Forms命名空間中的OpenFileDialog不同? –
@MattBridges我相信它基本上是不需要引用System.Windows.Forms.dll的WinForms對話框的WPF版本。 –
我通常只使用System.Windows.Forms
命名空間中的OpenFileDialog
。我別名它使用SWF
,然後它只是變得
SWF.OpenFileDialog o = new SWF.OpenFileDialog();
對於一個功能更完整的答案,假設你有一個按鈕BtnFileOpen
和一個文本框TxtFile
。首先,您需要從引用對話框中引用System.Windows.Forms
程序集(請確保選中該標記,雙擊它似乎不會爲我添加它)。
裏面的按鈕單擊事件:
private void BtnFileOpen_Click(object sender, RoutedEventArgs e)
{
var fileDialog = new System.Windows.Forms.OpenFileDialog();
var result = fileDialog.ShowDialog();
switch (result)
{
case System.Windows.Forms.DialogResult.OK:
var file = fileDialog.FileName;
TxtFile.Text = file;
TxtFile.ToolTip = file;
break;
case System.Windows.Forms.DialogResult.Cancel:
default:
TxtFile.Text = null;
TxtFile.ToolTip = null;
break;
}
}
如果您在文本框設置爲禁用您可能希望編輯您的XAML包括
ToolTipService.ShowOnDisabled="True"
鏈接斷開。 – TobiMcNamobi
@TobiMcNamobi是的...當然可以。抱歉。無法在任何檔案中找到它。 – mpen