SharePoint:扩展DVWP - 第11部分:在工作流中使用更多的表单字段

本文作为扩展DVWP系列的一部分。前面我们讨论了如何创建由表单操作触发的工作流。上一篇中我们发现可以给工作流传递除表单域以外的更多信息,可以传递其他工作流变量,并在工作流中利用这些变量。

尽管表单域会自动显示在工作流中,但你可能已经注意到,有时并不是所有的域都会出现。

这是为什么呢?

获取控件

事实上,问题应该这么来表达:是什么从本质上导致了这种现象?原因是只有特定的控件会被看做是表单域,从而传递给工作流:

1、SharePoint:FieldControl

2、ASP:Label

3、ASP:TextBox

4、ASP:CheckBox

5、ASP:RadioButton

不可编辑的域默认情况下在DVWP中不会显示成一个控件。

比如,这里有一个通知列表,其中包含了一些不可编辑的字段。当我们将其包含进DVWP中,然后创建了一个编辑模板时,这些字段会以xsl:value-of标记的形式显示:

1、在设计视图中,点击右侧的尖括号图标(当鼠标移到该字段上时显示出来的)。将“格式化为”改成“标签”。

2、此时,在代码视图中发生了以下变化:

从:

1
2
3
<td class="ms-vb">
        <xsl:value-of select="@ContentType" />
</td>

到:

1
2
3
<td class="ms-vb">
    <asp:Label runat="server" id="ff2{$Pos}" text="{@ContentType}" __designer:bind="{...代码...}" />
</td>

现在,看一下工作流里的表单域,内容类型(@ContentType)已经出现在里面了:

下一次:想要访问更多数据:想要在保存前得到用户修改后的数据?在接下来的扩展DVWP系列中,我们将添加更多的表单域到该页面。

 

参考资料

SharePoint: Extending the DVWP - Part 11:Getting More Form Fields to the Workflow

posted @   Sunmoonfire  阅读(1493)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 25岁的心里话
· 闲置电脑爆改个人服务器(超详细) #公网映射 #Vmware虚拟网络编辑器
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· 零经验选手,Compose 一天开发一款小游戏!
· 一起来玩mcp_server_sqlite,让AI帮你做增删改查!!
点击右上角即可分享
微信分享提示