2017-04-18 173 views
0

我們正在嘗試升級Aspose,並發現Aspose.Words.Document.MailMerge。 MergeFieldMergeFieldEventArgs在較新版本中缺失。Aspose升級 - 缺少屬性

有人可以幫我替換這個屬性/方法嗎?

Dim doc As Document = New Aspose.Words.Document(fileName) 
AddHandler doc.MailMerge.MergeField, AddressOf HandleMergeField 


Public Sub HandleMergeField(ByVal sender As Object, ByVal e As MergeFieldEventArgs) 
    'Do something 
End Sub 

enter image description here

回答

1

Aspose.Words.MailMerging命名空間包含報表引擎的郵件合併類。請從您的應用程序中刪除舊的郵件合併命名空間,並添加Aspose.Words.MailMerging命名空間。您需要實現IFieldMergingCallback接口來實現您的要求。請檢查以下代碼示例。

Public Sub MailMergeInsertHtml() 
    Dim doc As New Document(MyDir & "MailMerge.doc") 

    ' Add a handler for the MergeField event. 
    doc.MailMerge.FieldMergingCallback = New HandleMergeField() 


    ' Execute mail merge. 
    doc.MailMerge.Execute(New String() { "fieldname" }, New String() { "field value" }) 

    ' Save resulting document with a new name. 
    doc.Save(MyDir & "MailMergeOut.doc") 
End Sub 

Private Class HandleMergeField 
    Implements IFieldMergingCallback 
    ''' <summary> 
    ''' This is called when merge field is actually merged with data in the document. 
    ''' </summary> 
    Private Sub IFieldMergingCallback_FieldMerging(ByVal e As FieldMergingArgs) Implements IFieldMergingCallback.FieldMerging 
     '' Your code 
    End Sub 

    Private Sub ImageFieldMerging(ByVal e As ImageFieldMergingArgs) Implements IFieldMergingCallback.ImageFieldMerging 
     ' Do nothing. 
    End Sub 
End Class 

我使用Aspose作爲Developer evangelist。