码迷,mamicode.com
首页 > 其他好文 > 详细

在WPF使用FolderBrowserDialog和OpenFileDialog。

时间:2014-05-09 11:38:40      阅读:350      评论:0      收藏:0      [点我收藏+]

标签:winform   style   blog   class   ext   color   

相信习惯以前winform开发的朋友们都对FolderBrowserDialog和OpenFileDialog这两个东东不陌生,但是在我最近做的WPF项目中

才发现这两个东东在WPF中却不是默认存在的,郁闷,好歹WPF也出来几年了,咋个微软的同志不与时俱进呢。

好了,说说具体怎么用吧。

OpenFileDialog

用这个东东需要引用Microsoft.Win32类库。还是老玩意可靠。

Microsoft.Win32.OpenFileDialog op = new Microsoft.Win32.OpenFileDialog();          op.InitialDirectory = @"c:\";           op.RestoreDirectory = true;           op.Filter = "文本文件(*.txt)|*.txt|所有文件(*.*)|*.*";           op.ShowDialog();           txtPath.Text = op.FileName;

 

FolderBrowserDialog

这个要麻烦点点,先建一个类,比如命名为OldWindow.cs

public class OldWindow : System.Windows.Forms.IWin32Window   {       IntPtr _handle;       public OldWindow(IntPtr handle)       {           _handle = handle;       }

      #region IWin32Window Members       IntPtr System.Windows.Forms.IWin32Window.Handle       {           get { return _handle; }       }       #endregion   }

 

然后在你要使用的地方这样写

System.Windows.Forms.FolderBrowserDialog dlg = new System.Windows.Forms.FolderBrowserDialog();          System.Windows.Interop.HwndSource source = PresentationSource.FromVisual(this) as System.Windows.Interop.HwndSource;          System.Windows.Forms.IWin32Window win = new {上面那个类所在的命名空间名称}.OldWindow(source.Handle);          System.Windows.Forms.DialogResult result = dlg.ShowDialog(win);

         txtPath.Text = dlg.SelectedPath;

BTW:需要在项目中引用System.Windows.Forms.dll

 

bubuko.com,布布扣

 

 

 

摘自:http://www.cnblogs.com/allancandy/archive/2010/11/19/1882062.html

在WPF使用FolderBrowserDialog和OpenFileDialog。,布布扣,bubuko.com

在WPF使用FolderBrowserDialog和OpenFileDialog。

标签:winform   style   blog   class   ext   color   

原文地址:http://www.cnblogs.com/HyMagic/p/3709066.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!