AltChunk Класс

Определение

Определяет класс AltChunk.

Этот класс доступен в Office 2007 и более поздних версиях.

Когда объект сериализуется как xml, его полное имя — w:altChunk.

[DocumentFormat.OpenXml.ChildElementInfo(typeof(DocumentFormat.OpenXml.Wordprocessing.AltChunkProperties))]
[DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)]
[DocumentFormat.OpenXml.SchemaAttr(23, "altChunk")]
public class AltChunk : DocumentFormat.OpenXml.OpenXmlCompositeElement
public class AltChunk : DocumentFormat.OpenXml.OpenXmlCompositeElement
[DocumentFormat.OpenXml.SchemaAttr(23, "altChunk")]
public class AltChunk : DocumentFormat.OpenXml.OpenXmlCompositeElement
[DocumentFormat.OpenXml.SchemaAttr("w:altChunk")]
public class AltChunk : DocumentFormat.OpenXml.OpenXmlCompositeElement
[DocumentFormat.OpenXml.SchemaAttr("w:altChunk")]
public class AltChunk : DocumentFormat.OpenXml.TypedOpenXmlCompositeElement
[DocumentFormat.OpenXml.ChildElementInfo(typeof(DocumentFormat.OpenXml.Wordprocessing.AltChunkProperties))]
public class AltChunk : DocumentFormat.OpenXml.OpenXmlCompositeElement
[DocumentFormat.OpenXml.ChildElementInfo(typeof(DocumentFormat.OpenXml.Wordprocessing.AltChunkProperties))]
[DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)]
public class AltChunk : DocumentFormat.OpenXml.OpenXmlCompositeElement
[<DocumentFormat.OpenXml.ChildElementInfo(typeof(DocumentFormat.OpenXml.Wordprocessing.AltChunkProperties))>]
[<DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)>]
[<DocumentFormat.OpenXml.SchemaAttr(23, "altChunk")>]
type AltChunk = class
    inherit OpenXmlCompositeElement
type AltChunk = class
    inherit OpenXmlCompositeElement
[<DocumentFormat.OpenXml.SchemaAttr(23, "altChunk")>]
type AltChunk = class
    inherit OpenXmlCompositeElement
[<DocumentFormat.OpenXml.SchemaAttr("w:altChunk")>]
type AltChunk = class
    inherit OpenXmlCompositeElement
[<DocumentFormat.OpenXml.SchemaAttr("w:altChunk")>]
type AltChunk = class
    inherit TypedOpenXmlCompositeElement
[<DocumentFormat.OpenXml.ChildElementInfo(typeof(DocumentFormat.OpenXml.Wordprocessing.AltChunkProperties))>]
type AltChunk = class
    inherit OpenXmlCompositeElement
[<DocumentFormat.OpenXml.ChildElementInfo(typeof(DocumentFormat.OpenXml.Wordprocessing.AltChunkProperties))>]
[<DocumentFormat.OpenXml.OfficeAvailability(DocumentFormat.OpenXml.FileFormatVersions.Office2007)>]
type AltChunk = class
    inherit OpenXmlCompositeElement
Public Class AltChunk
Inherits OpenXmlCompositeElement
Public Class AltChunk
Inherits TypedOpenXmlCompositeElement
Наследование
Наследование
Атрибуты

Примеры

В следующем примере показано, как объединить два текстовых документа с помощью altChunk. В этом примере содержимое файла (source.docx) вставляется в другой файл (Destination.docx). После выполнения примера проверьте содержимое файла "Destination.docx". Вы заметите, что содержимое исходного файла вставляется сразу после текста, который был первоначально в файле. Обратите внимание, что пример кода начинается с удаления файла "Destination.docx" и создает новый. Это позволяет избежать конфликта идентификаторов при выполнении кода более одного раза.

using System.Linq;  
using System.IO;  
using DocumentFormat.OpenXml.Packaging;  
using DocumentFormat.OpenXml.Wordprocessing;  
namespace altChunk  
{  
    class Program  
    {  
        static void Main(string[] args)  
        {            
            string fileName1 = @"c:\Users\Public\Documents\Destination.docx";  
            string fileName2 = @"c:\Users\Public\Documents\Source.docx";  
            string testFile = @"c:\Users\Public\Documents\Test.docx";  
            File.Delete(fileName1);  
            File.Copy(testFile, fileName1);  
            using (WordprocessingDocument myDoc =  
                WordprocessingDocument.Open(fileName1, true))  
            {  
                string altChunkId = "AltChunkId1";  
                MainDocumentPart mainPart = myDoc.MainDocumentPart;  
                AlternativeFormatImportPart chunk =   
                    mainPart.AddAlternativeFormatImportPart(  
                    AlternativeFormatImportPartType.WordprocessingML, altChunkId);  
                using (FileStream fileStream = File.Open(fileName2, FileMode.Open))  
                    chunk.FeedData(fileStream);  
                AltChunk altChunk = new AltChunk();  
                altChunk.Id = altChunkId;  
                mainPart.Document  
                    .Body  
                    .InsertAfter(altChunk, mainPart.Document.Body  
                    .Elements<Paragraph>().Last());  
                mainPart.Document.Save();  
            }             
        }  
    }  
}  
Imports System.Linq  
Imports System.IO  
Imports DocumentFormat.OpenXml.Packaging  
Imports DocumentFormat.OpenXml.Wordprocessing  

Module Module1  
    Sub Main(ByVal args As String())  
        Dim fileName1 As String = "c:\Users\Public\Documents\Destination.docx"  
        Dim fileName2 As String = "c:\Users\Public\Documents\Source.docx"  
        Dim testFile As String = "c:\Users\Public\Documents\Test.docx"  
        File.Delete(fileName1)  
        File.Copy(testFile, fileName1)  
        Using myDoc As WordprocessingDocument = WordprocessingDocument.Open(fileName1, True)  
            Dim altChunkId As String = "AltChunkId1"  
            Dim mainPart As MainDocumentPart = myDoc.MainDocumentPart  
            Dim chunk As AlternativeFormatImportPart = mainPart.AddAlternativeFormatImportPart(AlternativeFormatImportPartType.WordprocessingML, altChunkId)  
            Using fileStream As FileStream = File.Open(fileName2, FileMode.Open)  
                chunk.FeedData(fileStream)  
            End Using  
            Dim altChunk As New AltChunk()  
            altChunk.Id = altChunkId  
            mainPart.Document.Body.InsertAfter(altChunk, mainPart.Document.Body.Elements(Of Paragraph)().Last())  
            mainPart.Document.Save()  
        End Using  
    End Sub  
End Module  

Комментарии

[ISO/IEC 29500-1 1 издание]

altChunk (привязка для импортированного внешнего содержимого)

Этот элемент задает расположение в документе для вставки содержимого указанного файла, содержащего внешнее содержимое, которое будет импортировано в документ WordprocessingML main. Содержимое указанного файла должно отображаться в указанном расположении в документе и отныне может выдаваться как обычный WordprocessingML без различия его происхождения. Расположение импортируемого внешнего содержимого должно быть указано отношением, атрибут Id которого соответствует атрибуту id для этого элемента.

Если тип отношения, указанного этим элементом, отличается от http://schemas.openxmlformats.org/officeDocument/2006/afChunk или не указан либо для его атрибута TargetMode не задано значение Internal, то документ считается несоответствующим. Если приложение не может обработать внешнее содержимое типа контента, указанного целевой частью, оно должно игнорировать указанное альтернативное содержимое, но продолжать обработку файла. По возможности он также должен указывать на то, что неизвестное содержимое не было импортировано.

[Пример. Рассмотрим документ WordprocessingML, состоящий из содержимого, которое необходимо импортировать из следующего HTML-документа:

<html … >  
  <body style="margin-left:200px;margin-top:50px">  
    <p>Paragraph one.</p>  
    <blockquote style="border:5px solid #00FFFF">Paragraph in a blockquote.</blockquote>  
    <p>Paragraph two.</p>  
  </body>  
</html>  

Итоговый документ узла WordprocessingML будет состоять из собственного содержимого WordprocessingML, а также привязки импорта внешнего содержимого в соответствующем расположении:

<w:body>  
  <w:altChunk r:id="altChunk1" />  
  <w:p/>  
  <w:sectPr>  
    …  </w:sectPr>  
</w:body>  

Элемент altChunk указывает, что внешнее содержимое, на которое нацелена связь с идентификатором altChunk1 , должно быть импортировано в начале документа. Изучив содержимое соответствующего элемента части связи, можно увидеть целевые объекты для этой связи:

<Relationships … >  
  …  <Relationship Id="altChunk1" TargetMode="Internal" Type="http://schemas.openxmlformats.org/officeDocument/2006/relationships/afChunk" Target="import.htm" />  
  …</Relationships>  

Соответствующий элемент части связи показывает, что импортируемый файл находится рядом с документом main и называется import.htm. конец примера

Родительские элементы
body (§17.2.2); comment (§17.13.4.2); docPartBody (§17.12.6); концевая сноска (§17.11.2); сноска (§17.11.10); ftr (§17.10.3); hdr (§17.10.4); tc (§17.4.66)
Дочерние элементы Вложенные запросы
altChunkPr (свойства импорта внешнего содержимого) §17.17.2.2

[Примечание. Определение xml-схемы W3C для модели содержимого этого элемента (CT_AltChunk) находится в §A.1. конечная заметка]

ISO/IEC29500: 2008.

Конструкторы

AltChunk()

Инициализирует новый экземпляр класса AltChunk.

AltChunk(IEnumerable<OpenXmlElement>)

Инициализирует новый экземпляр класса AltChunk указанными дочерними элементами.

AltChunk(OpenXmlElement[])

Инициализирует новый экземпляр класса AltChunk указанными дочерними элементами.

AltChunk(String)

Инициализирует новый экземпляр класса AltChunk из внешнего XML-кода.

Свойства

AltChunkProperties

Свойства импорта внешнего содержимого.

Представляет следующий тег элемента в схеме: w:altChunkPr.

ChildElements

Возвращает все дочерние узлы текущего элемента.

(Унаследовано от OpenXmlElement)
ExtendedAttributes

Возвращает все расширенные атрибуты (атрибуты, не определенные в схеме) текущего элемента.

(Унаследовано от OpenXmlElement)
Features

IFeatureCollection Возвращает для текущего элемента. Эта коллекция компонентов будет доступна только для чтения, но будет наследовать компоненты от родительской части и пакета, если они доступны.

(Унаследовано от OpenXmlElement)
FirstChild

Получает первый дочерний элемент текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlCompositeElement)
HasAttributes

Возвращает значение, указывающее, имеет ли текущий элемент какие-либо атрибуты.

(Унаследовано от OpenXmlElement)
HasChildren

Возвращает значение, указывающее, содержит ли текущий элемент какие-либо дочерние элементы.

(Унаследовано от OpenXmlCompositeElement)
Id

Связь с частью

Представляет следующий атрибут в схеме: r:id

InnerText

Возвращает или задает объединенные значения текущего узла и всех его дочерних элементов.

(Унаследовано от OpenXmlCompositeElement)
InnerXml

Возвращает или задает разметку, представляющую только дочерние узлы текущего узла.

(Унаследовано от OpenXmlCompositeElement)
LastChild

Возвращает последний дочерний элемент текущего элемента OpenXmlElement. Возвращает значение NULL (Nothing в Visual Basic), если такого элемента OpenXmlElement нет.

(Унаследовано от OpenXmlCompositeElement)
LocalName

Определяет класс AltChunk.

Этот класс доступен в Office 2007 и более поздних версиях.

Когда объект сериализуется как xml, его полное имя — w:altChunk.

LocalName

Возвращает локальное имя текущего элемента.

(Унаследовано от OpenXmlElement)
MCAttributes

Возвращает или задает атрибуты совместимости разметки. Возвращает значение NULL, если для текущего элемента не определены атрибуты совместимости разметки.

(Унаследовано от OpenXmlElement)
NamespaceDeclarations

Возвращает все объявления пространства имен, определенные в текущем элементе. Возвращает пустой перечислитель, если нет объявления пространства имен.

(Унаследовано от OpenXmlElement)
NamespaceUri

Возвращает универсальный код ресурса (URI) пространства имен текущего элемента.

(Унаследовано от OpenXmlElement)
OpenXmlElementContext

Возвращает openXmlElementContext текущего элемента.

(Унаследовано от OpenXmlElement)
OuterXml

Возвращает разметку, представляющую текущий элемент и все его дочерние элементы.

(Унаследовано от OpenXmlElement)
Parent

Возвращает родительский элемент текущего элемента.

(Унаследовано от OpenXmlElement)
Prefix

Возвращает префикс пространства имен текущего элемента.

(Унаследовано от OpenXmlElement)
XmlQualifiedName

Возвращает полное имя текущего элемента.

(Унаследовано от OpenXmlElement)
XName

Возвращает полное имя текущего элемента.

(Унаследовано от OpenXmlElement)

Методы

AddAnnotation(Object)

Добавляет объект в список заметок текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
AddChild(OpenXmlElement, Boolean)

Добавляет указанный элемент в элемент , если он является известным дочерним элементом. При этом элемент будет добавлен в правильное расположение в соответствии со схемой.

(Унаследовано от OpenXmlCompositeElement)
AddNamespaceDeclaration(String, String)

Добавляет объявление пространства имен в текущий узел.

(Унаследовано от OpenXmlElement)
Ancestors()

Перечисляет все предки текущего элемента.

(Унаследовано от OpenXmlElement)
Ancestors<T>()

Перечисляет только предки текущего элемента, имеющие указанный тип.

(Унаследовано от OpenXmlElement)
Annotation(Type)

Получение первого объекта заметки указанного типа из текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
Annotation<T>()

Получение первого объекта заметки указанного типа из текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
Annotations(Type)

Возвращает коллекцию заметок с указанным типом для текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
Annotations<T>()

Возвращает коллекцию заметок с указанным типом для текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
Append(IEnumerable<OpenXmlElement>)

Добавляет каждый элемент из списка элементов в конец списка дочерних элементов текущего элемента.

(Унаследовано от OpenXmlElement)
Append(OpenXmlElement[])

Добавляет каждый элемент из массива элементов в конец списка дочерних элементов текущего элемента.

(Унаследовано от OpenXmlElement)
AppendChild<T>(T)

Добавляет указанный элемент в конец списка дочерних узлов текущего элемента.

(Унаследовано от OpenXmlCompositeElement)
ClearAllAttributes()

Очищает все атрибуты, включая как известные, так и расширенные атрибуты.

(Унаследовано от OpenXmlElement)
Clone()

Создает дубликат текущего узла.

(Унаследовано от OpenXmlElement)
CloneNode(Boolean)

Создает дубликат этого узла.

Descendants()

Перечисляет все потомки текущего элемента.

(Унаследовано от OpenXmlElement)
Descendants<T>()

Перечисление всех потомков текущего элемента типа T.

(Унаследовано от OpenXmlElement)
Elements()

Перечисляет все дочерние элементы текущего элемента.

(Унаследовано от OpenXmlElement)
Elements<T>()

Перечисляет только дочерние элементы текущего элемента, имеющие указанный тип.

(Унаследовано от OpenXmlElement)
ElementsAfter()

Перечисляет все одноуровневые элементы, которые следуют за текущим элементом и имеют тот же родительский элемент, что и текущий элемент.

(Унаследовано от OpenXmlElement)
ElementsBefore()

Перечисляет все одноуровневые элементы, которые предшествуют текущему элементу и имеют тот же родительский элемент, что и текущий элемент.

(Унаследовано от OpenXmlElement)
GetAttribute(String, String)

Возвращает атрибут Open XML с указанным именем тега и URI пространства имен.

(Унаследовано от OpenXmlElement)
GetAttributes()

Возвращает список, содержащий копию всех атрибутов.

(Унаследовано от OpenXmlElement)
GetEnumerator()

Возвращает перечислитель, который выполняет итерацию по дочерней коллекции.

(Унаследовано от OpenXmlElement)
GetFirstChild<T>()

Находит первый дочерний элемент в типе T.

(Унаследовано от OpenXmlElement)
InsertAfter<T>(T, OpenXmlElement)

Вставляет указанный элемент сразу после указанного ссылочного элемента.

(Унаследовано от OpenXmlCompositeElement)
InsertAfterSelf<T>(T)

Вставляет указанный элемент сразу после текущего элемента.

(Унаследовано от OpenXmlElement)
InsertAt<T>(T, Int32)

Вставляет указанный элемент по указанному индексу дочерних элементов текущего элемента.

(Унаследовано от OpenXmlCompositeElement)
InsertBefore<T>(T, OpenXmlElement)

Вставляет указанный элемент непосредственно перед указанным ссылочным элементом.

(Унаследовано от OpenXmlCompositeElement)
InsertBeforeSelf<T>(T)

Вставляет указанный элемент непосредственно перед текущим элементом.

(Унаследовано от OpenXmlElement)
IsAfter(OpenXmlElement)

Определяет, отображается ли текущий элемент после указанного элемента в порядке документа.

(Унаследовано от OpenXmlElement)
IsBefore(OpenXmlElement)

Определяет, отображается ли текущий элемент перед указанным элементом в порядке документа.

(Унаследовано от OpenXmlElement)
LookupNamespace(String)

Разрешает префикс пространства имен в контексте текущего узла.

(Унаследовано от OpenXmlElement)
LookupPrefix(String)

Находит соответствующий префикс для URI пространства имен в текущем элементе область.

(Унаследовано от OpenXmlElement)
NextSibling()

Возвращает элемент OpenXmlElement, который сразу же следует за текущим элементом OpenXmlElement. Возвращает значение NULL (Nothing в Visual Basic), если нет следующего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
NextSibling<T>()

Возвращает элемент OpenXmlElement с указанным типом, который следует за текущим элементом OpenXmlElement. Возвращает значение NULL (Nothing в Visual Basic), если нет следующего OpenXmlElement.

(Унаследовано от OpenXmlElement)
PrependChild<T>(T)

Вставляет указанный элемент в начало списка дочерних узлов текущего элемента.

(Унаследовано от OpenXmlCompositeElement)
PreviousSibling()

Возвращает элемент OpenXmlElement, который непосредственно предшествует текущему элементу OpenXmlElement. Возвращает значение NULL (Nothing в Visual Basic), если нет предыдущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
PreviousSibling<T>()

Возвращает элемент OpenXmlElement с указанным типом, который предшествует текущему объекту OpenXmlElement. Возвращает значение NULL (Nothing в Visual Basic), если нет предыдущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
Remove()

Удаляет текущий элемент из родительского элемента.

(Унаследовано от OpenXmlElement)
RemoveAllChildren()

Удаляет все дочерние элементы текущего элемента.

(Унаследовано от OpenXmlCompositeElement)
RemoveAllChildren<T>()

Удалите все дочерние элементы текущего элемента типа T.

(Унаследовано от OpenXmlElement)
RemoveAnnotations(Type)

Удаляет заметки указанного типа из текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
RemoveAnnotations<T>()

Удаляет заметки с указанным типом из текущего элемента OpenXmlElement.

(Унаследовано от OpenXmlElement)
RemoveAttribute(String, String)

Удаляет атрибут из текущего элемента.

(Унаследовано от OpenXmlElement)
RemoveChild<T>(T)

Удаляет указанный дочерний элемент.

(Унаследовано от OpenXmlCompositeElement)
RemoveNamespaceDeclaration(String)

Удаляет объявление пространства имен для указанного префикса. Ничего не удаляет, если нет префикса.

(Унаследовано от OpenXmlElement)
ReplaceChild<T>(OpenXmlElement, T)

Заменяет один из дочерних элементов текущего элемента другим элементом OpenXmlElement.

(Унаследовано от OpenXmlCompositeElement)
SetAttribute(OpenXmlAttribute)

Задает атрибут заданного элемента. Если атрибут является известным атрибутом, задается значение атрибута. Если атрибут является расширенным атрибутом, в список расширенных атрибутов добавляется openxmlAttribute.

(Унаследовано от OpenXmlElement)
SetAttributes(IEnumerable<OpenXmlAttribute>)

Задает ряд атрибутов элемента . Если атрибут является известным атрибутом, задается значение атрибута. Если атрибут является расширенным атрибутом, в список расширенных атрибутов добавляется openxmlAttribute.

(Унаследовано от OpenXmlElement)
WriteTo(XmlWriter)

Сохраняет текущий узел в указанном xmlWriter.

(Унаследовано от OpenXmlElement)

Явные реализации интерфейса

IEnumerable.GetEnumerator()

Определяет класс AltChunk.

Этот класс доступен в Office 2007 и более поздних версиях.

Когда объект сериализуется как xml, его полное имя — w:altChunk.

(Унаследовано от OpenXmlElement)
IEnumerable<OpenXmlElement>.GetEnumerator()

Возвращает перечислитель, который выполняет итерацию по дочерней коллекции.

(Унаследовано от OpenXmlElement)

Применяется к