Infopath SharePoint 文档库

发布于 2024-08-07 15:00:11 字数 186 浏览 1 评论 0原文

我需要在工作流的信息路径表单上显示用户有权访问的文档库列表。我可以很好地构建我的库列表,但我一生都无法弄清楚如何使用库列表填充(无论如何)信息路径表单,并允许用户以某种方式说“是”或“否”每个(复选框是理想的,但此时我会采取任何措施)。

基本上我只需要弄清楚如何在加载事件中向用户添加是/否的项目列表,这样我就可以获取该信息并用它做一些事情。

I need to display a list of document libraries a user has permission to on an infopath form for a workflow. I can build my list of libraries just fine but I can not for the life of me figure out how to populate (in anyway) the infopath form with the list of libraries and allow the user to somehow say "yes" or "no" to each (checkbox is ideal but I'll take anything at this point).

Basically I just need to figure out how to add a list of items for yes/no to a user in the loading event so I can take that information and do something with it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

雄赳赳气昂昂 2024-08-14 15:00:11

我倾向于使用具有两列的重复表,一列包含复选框,一列包含标签。将它们正确地组合在一个模式中,然后您可以在后面弹出一些代码以迭代库列表并将节点弹出到此预填充的重复表的末尾。

以下是在 InfoPath 表单上的重复表内设置标签的示例:

XPathNavigator xmlDoc = MainDataSource.CreateNavigator();
XPathNavigator xmlItem = xmlDoc.SelectSingleNode("/my:MyForm/my:MyRepeatingGrp", this.NamespaceManager);

foreach (XmlNode libraryNode in documentLibraries)
{
XPathNavigator newItem = xmlItem.Clone();
XPathNavigator navText = newItem.SelectSingleNode("/my:MyLabel", this.NamespaceManager);
navText.SetValue(libraryNode.Attributes["LibraryName"].Value);
xmlItem.InsertAfter(newItem);
}

xmlItem.DeleteSelf();

I tend to use a repeating table with two columns, one containing a checkbox and one a label. Group these together properly in a schema then you can pop some code behind in to iterate through your list of libraries and pop nodes onto the end of this repeating table pre populated.

Here is an example that sets a label inside a repeating table on an InfoPath form:

XPathNavigator xmlDoc = MainDataSource.CreateNavigator();
XPathNavigator xmlItem = xmlDoc.SelectSingleNode("/my:MyForm/my:MyRepeatingGrp", this.NamespaceManager);

foreach (XmlNode libraryNode in documentLibraries)
{
XPathNavigator newItem = xmlItem.Clone();
XPathNavigator navText = newItem.SelectSingleNode("/my:MyLabel", this.NamespaceManager);
navText.SetValue(libraryNode.Attributes["LibraryName"].Value);
xmlItem.InsertAfter(newItem);
}

xmlItem.DeleteSelf();
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文