...
Exception |
---|
|
SetRepeatBlock will throw this exception if the bookmark has been set to be removed.
|
Limitations
Not all Word features can be included in a repeat block:
Supported in Repeat Blocks | Not Supported in Repeat Blocks |
---|
- Character Formatting (everywhere)
- Paragraph Formatting (Alignment, Outlines, Indent, Spacing, Page Break before, Keep Together)
- Multiple Columns (2, 3, Column Breaks)
- Borders and Shading
- Tabs
- Bullets
- Numbering (numbering not reset, it is continued from one repeat block to another)
- Page Breaks
- Section Breaks
- Auto Text Field
- Hyperlink
- Pictures
- Table Row Repeat (entire row only)
- Fields (with some restrictions)
| - Nested repeat blocks (Only one data source may be assigned to a single repeat block.)
- Overlapping bookmarks
- Comments
- Drawing Objects
- Text Boxes
- Footnote and endnote references
- Table and picture indexes
- Single cell in a table
- Smart tags (smart tags will be removed from the document)
- Repeat blocks in headers, footers, footnotes, comments, text boxes, etc.
|
...
...
|
---|
A repeat block is a fragment in the template document that will be repeated for each row in a data source. In the template document, repeat blocks are defined by Word bookmarks that contain merge fields. You can call SetRepeatBlock several times for a single instance of WordTemplate. The repeat block specified by the parameter bookmark must exist in the template. If you pass an empty DataSet to SetRepeatBlock - by either setting maxRows to 0 or passing an empty DataSet - WordWriter will not include the specified repeat block in the generated Word file. |
Remarks |
---|
Example |
---|
Code Block |
---|
|
//--- A dataset with the data to be repeated
DataSet ds = GetDataSet();
WordTemplate oWW = new WordTemplate();
oWW.Open("c:\\template.doc");
//--- Set a data source for the repeat block
//--- defined by the bookmark "Page"
//--- "ds" is the DataSet containing the data to be
//--- imported and repeated in the repeat block
//--- The first DataTable in the DataSet will be used
//--- Set MaxRows to 10. No matter how many DataRows
//--- are in the DataSet, only 10 will be imported
oWW.SetRepeatBlock(ds, "Page", 10);
oWW.Process();
oWW.Save(Page.Response, "Output.doc", false);
|
Code Block |
---|
|
'--- A dataset with the data to be repeated
Dim ds As DataSet = GetDataSet()
Dim oWW As New WordTemplate()
oWW.Open("c:\template.doc")
'--- Set a data source for the repeat block
'--- defined by the bookmark "Page"
'--- "ds" is the DataSet containing the data to be
'--- imported and repeated in the repeat block
'--- The first DataTable in the DataSet will be used
'--- Set MaxRows to 10. No matter how many DataRows
'--- are in the DataSet, only 10 will be imported
oWW.SetRepeatBlock(ds, "Page", 10)
oWW.Process()
oWW.Save(Page.Response, "Output.doc", False)
|
|