首页 新闻 会员 周边 捐助

关于SaveFileDialog方法

0
悬赏园豆:20 [已解决问题] 解决于 2014-06-30 16:29

问题描述:由于最近研究xml小工具,所以就涉及到了winfrom下的文件保存,但是在用到SaveFileDialog对象时,遇到以下问题,当我不设置FileName属性时, if (sfd.ShowDialog() != System.Windows.Forms.DialogResult.OK)可以过去,但是,当我设置了filename之后,就会一直等待录入信息,不知道该如何解决。求高手解答!

别马卒的主页 别马卒 | 初学一级 | 园豆:184
提问于:2014-06-30 15:05
< >
分享
最佳答案
0

没看懂,SaveFileDialog 哪儿来的“等待录入信息”?

收获园豆:20
Launcher | 高人七级 |园豆:45050 | 2014-06-30 15:22

ShowDialog()之后,弹出文件目录窗口,弹窗之后,必须修改文件名才可以点击保存,否则点击保存不管用。

别马卒 | 园豆:184 (初学一级) | 2014-06-30 15:24

@别马卒: 其它的不说,你先告诉我你点击“保存”后,sfd.ShowDialog() 的返回值是多少?

Launcher | 园豆:45050 (高人七级) | 2014-06-30 15:40

@Launcher: 正如提问中的if语句,他的返回值是一个DialogResult对象。点击保存应该是DialogResult.OK

别马卒 | 园豆:184 (初学一级) | 2014-06-30 15:44

@别马卒: 我问你返回值是什么,没问你返回值不是什么。请你告诉我返回值究竟是什么?

Launcher | 园豆:45050 (高人七级) | 2014-06-30 15:52

@Launcher: debug后,点击保存按钮,无反应。点击取消时cancel

别马卒 | 园豆:184 (初学一级) | 2014-06-30 15:53

@别马卒: 你的意思是说点击“保存”后,保存文件对话框没有关闭吗?

Launcher | 园豆:45050 (高人七级) | 2014-06-30 16:00

@Launcher: 是的,只有输入新的文件名,再点击保存才会保存的,这个让我很头疼。

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:02

@别马卒: 目录下是否有同名文件?包括隐藏的。

Launcher | 园豆:45050 (高人七级) | 2014-06-30 16:04

@Launcher: 没有

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:06

@Launcher: 没有,因为每次的文件名一定会包含时间到秒。

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:06

@别马卒: 文件名是啥,给个看看。

Launcher | 园豆:45050 (高人七级) | 2014-06-30 16:12

@Launcher:    sfd.FileName = "209_??????????_" + DateTime.Now.ToString("yyyyMMddHHmmss") + ".xml";

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:12

@别马卒: 请问你这个文件名中的 “??????????” 是你的代码中就这样写的,还是说表示任意可用作路径的字符?

Launcher | 园豆:45050 (高人七级) | 2014-06-30 16:15

@Launcher: 代码中就这样写的,因为这一部分串号未知规则,需要人工修改

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:17

@别马卒: 既然需要人工修改,在没有修改前就不让保存,这有什么不对吗?

Launcher | 园豆:45050 (高人七级) | 2014-06-30 16:18

@Launcher: 是为了加快效率,这个文件保存之后,定位到文件,人工取修改文件名。

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:19

@别马卒: 那么我现在请你做一件事情,打开磁盘 D,右键选择“新建”-〉“文本文件”,然后修改文件名为:209_??????????_20140630162354.xml。

Launcher | 园豆:45050 (高人七级) | 2014-06-30 16:22

@Launcher: 我明白您的意思了,命名不符合规则,谢谢,看来这样写并不对。

别马卒 | 园豆:184 (初学一级) | 2014-06-30 16:28
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册