我能够阻止用户删除InfoPath 2003中的保存重复部分。我的代码在Infopath 2010中不起作用。任何人都可以找到重写下面代码的新方法吗?
在重复部分的OnBeforeChange中的InfoPath 2003中,我能够检查DataDOMEvent属性e.Site和e.Source以查看是谁引发了该事件。例如:
<ParentElement>
…
<RepeatingSection IsSave=”false” …>
<Field 1 />
<Field 2 />
<Field 3 />
<Field 4 />
<Field 5 />
<Field 6 />
</RepeatingSection>
…
</ParentElement>
Dim isRowModification As Boolean
Dim IsSave As Boolean
…
isRowModification = (e.Source Is e.Site)
If IsSave AndAlso isRowModification Then
e.ReturnMessage = "You cannot modify or remove this Section."
e.ReturnStatus = False
End If
在InfoPath 2010中,XmlChangingEventArgs没有e.Source属性。当重复部分的更改事件由字段更改或重复部分本身引发时,e.Site始终指向重复部分。我需要一种方法来知道字段5是否会引发重复的部分更改事件。