1

我能够阻止用户删除 InfoPath 2003 中的保存重复部分。我的代码在 InfoPath 2010 中不起作用。任何人都可以找到重写以下代码的新方法吗?

在重复部分的 OnBeforeChange 内的 InfoPath 2003 中,我能够检查 DataDOMEvent 属性 e.Site 和 e.Source 以查看谁引发了该事件。例如:

 <ParentElement>
  …
 <RepeatingSection IsSave=”false” …&gt;
<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 是否引发重复的部分更改事件。

4

0 回答 0