2017-09-15 17 views
0

SQL 데이터베이스에서 오는 데이터 집합을 사용하여 편지 병합을 수행하고 있습니다. 나는 거기에 일부 HTML 마크 업으로 데이터베이스에 저장 오는 중입니다 데이터, 예 : 내 병합 필드의 또 다른 하나는이 텍스트를 포함편지 병합 html 형식의 텍스트를 데이터베이스에서 워드 문서

<ul><li><strong>Bullet Title 1</strong>Bullet content 1.</li><li><strong>Bullet Title 2</strong>Bullet content 2.</li></ul> 

:

내 병합 필드의

하나는이 텍스트가 포함되어 있습니다 :

지금은 Spire.Doc을 사용하고 들어
<strong>List of employees</strong><br />First Name< br />Second Name<br />Third Name 

하지만 문서를 렌더링 할 때, 필드 대신 형식의 텍스트를 렌더링의 HTML 태그를 보여줍니다. 다음은

나는 코드를 사용하고 있습니다 :

가 어떻게 대신 html 태그의 형식의 텍스트를 표시 할 수있는 병합 필드를 달성 할 수

Public Shared Sub FieldMerge(ByVal ds As DataSet, ByRef doc As Document) 

     '********************************** 
     'Merging 
     '********************************** 
     Dim fieldNames As New List(Of String)() 
     Dim fieldValues As New List(Of String)() 


     For Each dtcolumn As DataColumn In ds.Tables(0).Columns 
      'Add the values to the list of string 
      fieldNames.Add(dtcolumn.ColumnName) 

      '**** THIS TEXT COULD HAVE SOME HTML TAGS - HOW TO RENDER THIS IN THE MERGE FIELD???? *****' 
      fieldValues.Add(ds.Tables(0).Rows(0)(dtcolumn.ColumnName).ToString) 

     Next 

     Dim fieldNamesArray As String() = fieldNames.ToArray() 
     Dim fieldValuesArray As String() = fieldValues.ToArray() 

     'Execute the merge 
     doc.MailMerge.Execute(fieldNamesArray, fieldValuesArray) 


    End Sub 
? 모든 조언을 많이 주시면 감사하겠습니다.

Public Shared Sub FieldMerge(ByVal ds As DataSet, ByRef doc As DocumentModel) 
    AddHandler doc.MailMerge.FieldMerging, 
     Sub(sender, e) 
      If e.FieldName = "MyField" Then 
       e.Field.Content.End.LoadText(e.Value.ToString(), LoadOptions.HtmlDefault) 
       e.Inline = Nothing 
      End If 
     End Sub 

    doc.MailMerge.Execute(ds.Tables(0)) 
End Sub 

그 샘플이 FieldMerging 이벤트를 처리하여 편지 병합 프로세스를 사용자 정의 할 수 있습니다 방법을 보여줍니다 당신이 GemBox.Document으로 그렇게 할 수있는 방법은 다음과

답변

0

이다. "MyField"이름이 포함 된 병합 필드는 HTML 형식의 문자열을 받아야하므로 DataTable의 "MyField"열에는 HTML 텍스트가 있어야합니다.
또한 메일 병합에서 데이터 소스로 DataTable을 사용할 수 있습니다. mail merge example heremail merge documentation here을 찾을 수 있습니다.

다음 기사도 흥미로운 것 같습니다.