wpf如何d出选择对话框

wpf如何d出选择对话框,第1张

�0�2MsgBoxResult = MessageBox.Show("请选择你要按下的按钮",//对话框的显示内容�0�2�0�2"提示",//对话框的标题�0�2�0�2MessageBoxButtons.YesNo,//定义对话框的按钮,这里定义了YSE和NO两个按钮�0�2�0�2MessageBoxIcon.Exclamation,//定义对话框内的图表式样,这里是一个黄色三角型内加一个感叹号�0�2�0�2MessageBoxDefaultButton.Button2)//定义对话框的按钮式样�0�2if (MsgBoxResult == DialogResult.Yes)//如果对话框的返回值是YES(按"Y"按钮)�0�2{�0�2this.label1.ForeColor = System.Drawing.Color.Red//字体颜色设定�0�2label1.Text = " 你选择了按下”Yes“的按钮!"�0�2}�0�2if (MsgBoxResult == DialogResult.No)//如果对话框的返回值是NO(按"N"按钮)�0�2{�0�2this.label1.ForeColor = System.Drawing.Color.Blue//字体颜色设定�0�2label1.Text = " 你选择了按下”No“的按钮!"�0�2}在WPF中就报错,请问这段代码放在WPF中如何改,谢谢! C#语言131 次浏览 2010-04-15 13:085 个回答 我已经完成了,自己顶一下。谢谢了 2010-04-16 09:52 推荐: 0 次 有帮助? 请推荐 JF~~~~ 2010-04-16 10:13 推荐: 0 次 有帮助? 请推荐 private void Window_Closing(object sender, System.ComponentModel.CancelEventArgs e)�0�2{�0�2if (flag)�0�2{�0�2MessageBox.Show("采集正在进行,真的要退出吗?!", "提示", MessageBoxButton.YesNo)�0�2if (DialogResult.Value)//如果对话框的返回值是YES(按"Y"按钮)�0�2{�0�2this.Close()�0�2}�0�2else�0�2{�0�2e.Cancel = true�0�2}�0�2}�0�2else�0�2{�0�2this.Close()�0�2}�0�2} 2010-06-11 16:32 推荐: 0 次 有帮助? 请推荐 看来,WPF的 精华被糟蹋了,这么好的东西,被你们当成了WINFORM用! 2010-07-06 15:07 推荐: 0 次 有帮助? 请推荐

WPF中实现点击 . . . 按钮后选择文件夹作为主目录功能;亲测有用

(下图是我用WPF做的FTP服务器和FTP上传下载器的一部分)

// 选择文件

private void btnSelectRootDirect_Click(object sender, RoutedEventArgs e)

{

    System.Windows.Forms.FolderBrowserDialog openFileDialog = 

                                   new System.Windows.Forms.FolderBrowserDialog()

    /*注意,FolderBrowserDialog前面的命名空间不能删除,此处一定要手动引入

    System.Window.Forms空间,否则你使用默认的DialogResult会发现没有OK属性*/

    if (openFileDialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)

    {

        txtFtpRoot.Text = openFileDialog.SelectedPath

    }

}

注意:在wpf中手动引入System.Window.Forms时报错,原因如下

在C# Winform窗体应用中默认引入System.Window.Forms,

但是wpf中没有没有默认引入System.Window.Forms;需要添加引用

解决方案:项目右侧--解决资源管理器---引用---右键--添加引用---在.NET下拉框找---找到System.Windows.Forms---点击确定然后--vs的菜单栏第五个--生成----重新生成解决方案--就可以了。

注意:此时如果程序中包含MessageBox,则引入System.Windows.Forms时MessageBox会报错(因为System.Windows和System.Windows.Forms两个命名空间下都有MessageBox类,如果不指明该类是哪个空间下的,程序就会摸不着头脑),改为System.Windows.MessageBox即可

详见代码和注释:

System.Windows.Forms.OpenFileDialog openFile = new System.Windows.Forms.OpenFileDialog()

openFile.CheckFileExists = true//检查文件是否存在

openFile.CheckPathExists = true//检查路径是否存在

openFile.Multiselect = true//是否允许多选,false表示单选

openFile.InitialDirectory = "C:\\"//设置打开时的默认路径,我这里设置为C盘根目录

string filter = "txt,doc"

filter = filter.TrimEnd(',')

if (filter.Equals(""))

{

    filter = "*"

}

filter = filter.Replace(",", "*.")

filter = "*." + filter

openFile.Filter = "Txt files (" + filter + ")|" + filter + "|All files (*.*)|*.*"//这里设置的是文件过滤器,比如选了txt文件,那别的文件就看不到了

if (openFile.ShowDialog() == System.Windows.Forms.DialogResult.OK)//打开文件选择器,并按下选择按钮

{

    String[] names = openFile.FileNames

    String message = "已选择的文件如下:\r\n"

    for (int i = 0 i < names.length i++)

    {

        message += names + "\r\n"

    }

    MessageBox.show(message)

}

另外,你说不能多选,这个多选时要按住Ctrl才能选中多个文件,或者按住鼠标左键滑动以选定多个目标才行。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11900725.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-19
下一篇 2023-05-19

发表评论

登录后才能评论

评论列表(0条)

保存