com.aspose.words
Class SdtListItem

java.lang.Object
    extended by com.aspose.words.SdtListItem
All Implemented Interfaces:
java.lang.Cloneable

public class SdtListItem 
extends java.lang.Object

This element specifies a single list item within a parent SdtType.COMBO_BOX or SdtType.DROP_DOWN_LIST structured document tag.

Example:

Shows how to work with StructuredDocumentTag nodes of the DropDownList type.
// Create a blank document and insert a StructuredDocumentTag that will contain a drop down list
Document doc = new Document();
StructuredDocumentTag tag = new StructuredDocumentTag(doc, SdtType.DROP_DOWN_LIST, MarkupLevel.BLOCK);
doc.getFirstSection().getBody().appendChild(tag);

// A drop down list needs elements, each of which will be a SdtListItem
SdtListItemCollection listItems = tag.getListItems();
listItems.add(new SdtListItem("Value 1"));

// Each SdtListItem has text that will be displayed when the drop down list is opened, and also a value
// When we initialize with one string, we are providing just the value
// Accordingly, value is passed as DisplayText and will consequently be displayed on the screen
Assert.assertEquals(listItems.get(0).getValue(), listItems.get(0).getDisplayText());

// Add 3 more SdtListItems with non-empty strings passed to DisplayText
listItems.add(new SdtListItem("Item 2", "Value 2"));
listItems.add(new SdtListItem("Item 3", "Value 3"));
listItems.add(new SdtListItem("Item 4", "Value 4"));

// We can obtain a count of the SdtListItems and also set the drop down list's SelectedValue attribute to
// automatically have one of them pre-selected when we open the document in Microsoft Word
Assert.assertEquals(listItems.getCount(), 4);
listItems.setSelectedValue(listItems.get(3));

Assert.assertEquals(listItems.getSelectedValue().getValue(), "Value 4");

// We can enumerate over the collection and print each element
Iterator<SdtListItem> enumerator = listItems.iterator();
while (enumerator.hasNext()) {
    SdtListItem sdtListItem = enumerator.next();
    System.out.println(MessageFormat.format("List item: {0}, value: {1}", sdtListItem.getDisplayText(), sdtListItem.getValue()));
}

// We can also remove elements one at a time
listItems.removeAt(3);
Assert.assertEquals(listItems.getCount(), 3);

// Make sure to update the SelectedValue's index if it ever ends up out of bounds before saving the document
listItems.setSelectedValue(listItems.get(1));

doc.save(getArtifactsDir() + "SDT.ListItemCollection.docx");

// We can clear the whole collection at once too
listItems.clear();
Assert.assertEquals(listItems.getCount(), 0);

Constructor Summary
SdtListItem(java.lang.String displayText, java.lang.String value)
           Initializes a new instance of this class.
SdtListItem(java.lang.String value)
           Initializes a new instance of this class.
 
Property Getters/Setters Summary
java.lang.StringgetDisplayText()
           Gets the text to display in the run content in place of the Value attribute contents for this list item.
java.lang.StringgetValue()
           Gets the value of this list item.
 

Constructor Detail

SdtListItem

public SdtListItem(java.lang.String displayText, java.lang.String value)
Initializes a new instance of this class.

Example:

Shows how to work with StructuredDocumentTag nodes of the DropDownList type.
// Create a blank document and insert a StructuredDocumentTag that will contain a drop down list
Document doc = new Document();
StructuredDocumentTag tag = new StructuredDocumentTag(doc, SdtType.DROP_DOWN_LIST, MarkupLevel.BLOCK);
doc.getFirstSection().getBody().appendChild(tag);

// A drop down list needs elements, each of which will be a SdtListItem
SdtListItemCollection listItems = tag.getListItems();
listItems.add(new SdtListItem("Value 1"));

// Each SdtListItem has text that will be displayed when the drop down list is opened, and also a value
// When we initialize with one string, we are providing just the value
// Accordingly, value is passed as DisplayText and will consequently be displayed on the screen
Assert.assertEquals(listItems.get(0).getValue(), listItems.get(0).getDisplayText());

// Add 3 more SdtListItems with non-empty strings passed to DisplayText
listItems.add(new SdtListItem("Item 2", "Value 2"));
listItems.add(new SdtListItem("Item 3", "Value 3"));
listItems.add(new SdtListItem("Item 4", "Value 4"));

// We can obtain a count of the SdtListItems and also set the drop down list's SelectedValue attribute to
// automatically have one of them pre-selected when we open the document in Microsoft Word
Assert.assertEquals(listItems.getCount(), 4);
listItems.setSelectedValue(listItems.get(3));

Assert.assertEquals(listItems.getSelectedValue().getValue(), "Value 4");

// We can enumerate over the collection and print each element
Iterator<SdtListItem> enumerator = listItems.iterator();
while (enumerator.hasNext()) {
    SdtListItem sdtListItem = enumerator.next();
    System.out.println(MessageFormat.format("List item: {0}, value: {1}", sdtListItem.getDisplayText(), sdtListItem.getValue()));
}

// We can also remove elements one at a time
listItems.removeAt(3);
Assert.assertEquals(listItems.getCount(), 3);

// Make sure to update the SelectedValue's index if it ever ends up out of bounds before saving the document
listItems.setSelectedValue(listItems.get(1));

doc.save(getArtifactsDir() + "SDT.ListItemCollection.docx");

// We can clear the whole collection at once too
listItems.clear();
Assert.assertEquals(listItems.getCount(), 0);

SdtListItem

public SdtListItem(java.lang.String value)
Initializes a new instance of this class.

Example:

Shows how to work with StructuredDocumentTag nodes of the DropDownList type.
// Create a blank document and insert a StructuredDocumentTag that will contain a drop down list
Document doc = new Document();
StructuredDocumentTag tag = new StructuredDocumentTag(doc, SdtType.DROP_DOWN_LIST, MarkupLevel.BLOCK);
doc.getFirstSection().getBody().appendChild(tag);

// A drop down list needs elements, each of which will be a SdtListItem
SdtListItemCollection listItems = tag.getListItems();
listItems.add(new SdtListItem("Value 1"));

// Each SdtListItem has text that will be displayed when the drop down list is opened, and also a value
// When we initialize with one string, we are providing just the value
// Accordingly, value is passed as DisplayText and will consequently be displayed on the screen
Assert.assertEquals(listItems.get(0).getValue(), listItems.get(0).getDisplayText());

// Add 3 more SdtListItems with non-empty strings passed to DisplayText
listItems.add(new SdtListItem("Item 2", "Value 2"));
listItems.add(new SdtListItem("Item 3", "Value 3"));
listItems.add(new SdtListItem("Item 4", "Value 4"));

// We can obtain a count of the SdtListItems and also set the drop down list's SelectedValue attribute to
// automatically have one of them pre-selected when we open the document in Microsoft Word
Assert.assertEquals(listItems.getCount(), 4);
listItems.setSelectedValue(listItems.get(3));

Assert.assertEquals(listItems.getSelectedValue().getValue(), "Value 4");

// We can enumerate over the collection and print each element
Iterator<SdtListItem> enumerator = listItems.iterator();
while (enumerator.hasNext()) {
    SdtListItem sdtListItem = enumerator.next();
    System.out.println(MessageFormat.format("List item: {0}, value: {1}", sdtListItem.getDisplayText(), sdtListItem.getValue()));
}

// We can also remove elements one at a time
listItems.removeAt(3);
Assert.assertEquals(listItems.getCount(), 3);

// Make sure to update the SelectedValue's index if it ever ends up out of bounds before saving the document
listItems.setSelectedValue(listItems.get(1));

doc.save(getArtifactsDir() + "SDT.ListItemCollection.docx");

// We can clear the whole collection at once too
listItems.clear();
Assert.assertEquals(listItems.getCount(), 0);

Property Getters/Setters Detail

getDisplayText

public java.lang.String getDisplayText()
Gets the text to display in the run content in place of the Value attribute contents for this list item.

Cannot be null and cannot be an empty string.

Example:

Shows how to work with StructuredDocumentTag nodes of the DropDownList type.
// Create a blank document and insert a StructuredDocumentTag that will contain a drop down list
Document doc = new Document();
StructuredDocumentTag tag = new StructuredDocumentTag(doc, SdtType.DROP_DOWN_LIST, MarkupLevel.BLOCK);
doc.getFirstSection().getBody().appendChild(tag);

// A drop down list needs elements, each of which will be a SdtListItem
SdtListItemCollection listItems = tag.getListItems();
listItems.add(new SdtListItem("Value 1"));

// Each SdtListItem has text that will be displayed when the drop down list is opened, and also a value
// When we initialize with one string, we are providing just the value
// Accordingly, value is passed as DisplayText and will consequently be displayed on the screen
Assert.assertEquals(listItems.get(0).getValue(), listItems.get(0).getDisplayText());

// Add 3 more SdtListItems with non-empty strings passed to DisplayText
listItems.add(new SdtListItem("Item 2", "Value 2"));
listItems.add(new SdtListItem("Item 3", "Value 3"));
listItems.add(new SdtListItem("Item 4", "Value 4"));

// We can obtain a count of the SdtListItems and also set the drop down list's SelectedValue attribute to
// automatically have one of them pre-selected when we open the document in Microsoft Word
Assert.assertEquals(listItems.getCount(), 4);
listItems.setSelectedValue(listItems.get(3));

Assert.assertEquals(listItems.getSelectedValue().getValue(), "Value 4");

// We can enumerate over the collection and print each element
Iterator<SdtListItem> enumerator = listItems.iterator();
while (enumerator.hasNext()) {
    SdtListItem sdtListItem = enumerator.next();
    System.out.println(MessageFormat.format("List item: {0}, value: {1}", sdtListItem.getDisplayText(), sdtListItem.getValue()));
}

// We can also remove elements one at a time
listItems.removeAt(3);
Assert.assertEquals(listItems.getCount(), 3);

// Make sure to update the SelectedValue's index if it ever ends up out of bounds before saving the document
listItems.setSelectedValue(listItems.get(1));

doc.save(getArtifactsDir() + "SDT.ListItemCollection.docx");

// We can clear the whole collection at once too
listItems.clear();
Assert.assertEquals(listItems.getCount(), 0);

getValue

public java.lang.String getValue()
Gets the value of this list item.

Cannot be null and cannot be an empty string.

Example:

Shows how to work with StructuredDocumentTag nodes of the DropDownList type.
// Create a blank document and insert a StructuredDocumentTag that will contain a drop down list
Document doc = new Document();
StructuredDocumentTag tag = new StructuredDocumentTag(doc, SdtType.DROP_DOWN_LIST, MarkupLevel.BLOCK);
doc.getFirstSection().getBody().appendChild(tag);

// A drop down list needs elements, each of which will be a SdtListItem
SdtListItemCollection listItems = tag.getListItems();
listItems.add(new SdtListItem("Value 1"));

// Each SdtListItem has text that will be displayed when the drop down list is opened, and also a value
// When we initialize with one string, we are providing just the value
// Accordingly, value is passed as DisplayText and will consequently be displayed on the screen
Assert.assertEquals(listItems.get(0).getValue(), listItems.get(0).getDisplayText());

// Add 3 more SdtListItems with non-empty strings passed to DisplayText
listItems.add(new SdtListItem("Item 2", "Value 2"));
listItems.add(new SdtListItem("Item 3", "Value 3"));
listItems.add(new SdtListItem("Item 4", "Value 4"));

// We can obtain a count of the SdtListItems and also set the drop down list's SelectedValue attribute to
// automatically have one of them pre-selected when we open the document in Microsoft Word
Assert.assertEquals(listItems.getCount(), 4);
listItems.setSelectedValue(listItems.get(3));

Assert.assertEquals(listItems.getSelectedValue().getValue(), "Value 4");

// We can enumerate over the collection and print each element
Iterator<SdtListItem> enumerator = listItems.iterator();
while (enumerator.hasNext()) {
    SdtListItem sdtListItem = enumerator.next();
    System.out.println(MessageFormat.format("List item: {0}, value: {1}", sdtListItem.getDisplayText(), sdtListItem.getValue()));
}

// We can also remove elements one at a time
listItems.removeAt(3);
Assert.assertEquals(listItems.getCount(), 3);

// Make sure to update the SelectedValue's index if it ever ends up out of bounds before saving the document
listItems.setSelectedValue(listItems.get(1));

doc.save(getArtifactsDir() + "SDT.ListItemCollection.docx");

// We can clear the whole collection at once too
listItems.clear();
Assert.assertEquals(listItems.getCount(), 0);

See Also:
          Aspose.Words Documentation - the home page for the Aspose.Words Product Documentation.
          Aspose.Words Support Forum - our preferred method of support.