Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/282.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在InfoPath表单中创建自定义保存按钮_C#_Infopath_Infopath2010 - Fatal编程技术网

C# 在InfoPath表单中创建自定义保存按钮

C# 在InfoPath表单中创建自定义保存按钮,c#,infopath,infopath2010,C#,Infopath,Infopath2010,我为我的公司设计了一份采购申请表,这张表的效果非常好;但是,管理层希望表单还有一项功能。他们基本上想要一个“保存表单”按钮,只要他们想保存表单,点击该按钮就会自动打开一个“另存为窗口。不仅如此,他们还希望在另存为框中弹出的默认文件夹是一个网络驱动器(例如\\servername\dept shares\approved PRs`)我知道这基本上是通过MS Office中烘焙的保存功能来避免额外的点击,但这正是他们想要的,以“减少人为错误” 我查找了一些使用C#对按钮进行编程的方法,但我似乎遗漏了

我为我的公司设计了一份采购申请表,这张表的效果非常好;但是,管理层希望表单还有一项功能。他们基本上想要一个“保存表单”按钮,只要他们想保存表单,点击该按钮就会自动打开一个“另存为
窗口。不仅如此,他们还希望在
另存为
框中弹出的默认文件夹是一个网络驱动器(例如
\\servername\dept shares\approved PRs`)我知道这基本上是通过MS Office中烘焙的保存功能来避免额外的点击,但这正是他们想要的,以“减少人为错误”

我查找了一些使用C#对按钮进行编程的方法,但我似乎遗漏了一些东西(我是一个新手程序员)。例如,为了看看是否可以在按钮上使用保存功能,我尝试使用推荐的:

using System.XML.Linq;

XDocument.save();
调试后,我得到:

System.Xml.Linq.XDocument
不包含
save
的定义

我想我没有调用正确的引用。我被卡住了!有人能解释一下吗?我想在这一点上,我只是想确保甚至可以创建一个保存按钮,更不用说将其默认为共享网络驱动器了。
如果这看起来非常简单,我深表歉意。

您需要使用
Microsoft.Office.Interop.InfoPath
而不是
System.XML.Linq
。InfoPath引用确实包含一个.Save()引用,希望您找到的其他示例从那时起会有所帮助

如果没有,您可能希望查看引用System.Windows.Forms并使用SaveFileDialog允许用户选择其路径

        SaveFileDialog dialog = new SaveFileDialog();
        dialog.InitialDirectory = @"\\servername\share";
        dialog.ShowDialog();