BuildingBlock
İçindekiler
[
Saklamak
]BuildingBlock class
Bir Yapı Bloğu, Otomatik Metin veya Otomatik Düzeltme girişi gibi bir sözlük belge girişini temsil eder.
Daha fazla bilgi edinmek için şu adresi ziyaret edin:Aspose.Words Belge Nesne Modeli (DOM) belgeleme makalesi.
public class BuildingBlock : CompositeNode
yapıcılar
İsim | Tanım |
---|---|
BuildingBlock(GlossaryDocument) | Bu sınıfın yeni bir örneğini başlatır. |
Özellikleri
İsim | Tanım |
---|---|
Behavior { get; set; } | Yapı bloğunun içeriği ana belgeye eklendiğinde uygulanacak davranışı belirtir. |
Category { get; set; } | Yapı bloğu için ikinci düzey kategorizasyonu belirtir. |
Count { get; } | Bu düğümün hemen alt düğümlerinin sayısını alır. |
CustomNodeId { get; set; } | Özel düğüm tanımlayıcısını belirtir. |
Description { get; set; } | Bu yapı bloğuyla ilişkili açıklamayı alır veya ayarlar. |
virtual Document { get; } | Bu düğümün ait olduğu belgeyi alır. |
FirstChild { get; } | Düğümün ilk çocuğunu alır. |
FirstSection { get; } | Yapı bloğundaki ilk bölümü alır. |
Gallery { get; set; } | sınıflandırması veya kullanıcı arayüzü sıralaması amaçları doğrultusunda yapı taşı için birinci düzey kategorizasyonu belirtir. |
Guid { get; set; } | Bu yapı taşını benzersiz bir şekilde tanımlayan bir tanımlayıcı (128 bitlik bir GUID) alır veya ayarlar. |
HasChildNodes { get; } | Geri Döndürürdoğru eğer bu düğümün herhangi bir alt düğümü varsa. |
override IsComposite { get; } | Geri Döndürürdoğru çünkü bu düğümün alt düğümleri olabilir. |
LastChild { get; } | Düğümün son çocuğunu alır. |
LastSection { get; } | Yapı bloğundaki son bölümü alır. |
Name { get; set; } | Bu yapı bloğunun adını alır veya ayarlar. |
NextSibling { get; } | Bu düğümü hemen takip eden düğümü alır. |
override NodeType { get; } | şunu döndürür:BuildingBlock değer. |
ParentNode { get; } | Bu düğümün en yakın üst düğümünü alır. |
PreviousSibling { get; } | Bu düğümden hemen önceki düğümü alır. |
Range { get; } | BirRange bu düğümde bulunan bir belgenin bölümünü temsil eden nesne. |
Sections { get; } | Yapı bloğundaki tüm bölümleri temsil eden bir koleksiyon döndürür. |
Type { get; set; } | Yapı bloğu türünü belirtir. |
yöntemler
İsim | Tanım |
---|---|
override Accept(DocumentVisitor) | Bir ziyaretçiyi kabul eder. |
override AcceptEnd(DocumentVisitor) | BuildingBlock’un sonunu ziyaret eden bir ziyaretçiyi kabul eder. |
override AcceptStart(DocumentVisitor) | BuildingBlock’un başlangıcını ziyaret eden bir ziyaretçiyi kabul eder. |
AppendChild<T>(T) | Belirtilen düğümü bu düğüm için alt düğümler listesinin sonuna ekler. |
Clone(bool) | Düğümün bir kopyasını oluşturur. |
CreateNavigator() | Düğümleri gezmek ve okumak için kullanılabilen gezgini oluşturur. |
GetAncestor(NodeType) | Belirtilenin ilk atasını alırNodeType . |
GetAncestor(Type) | Belirtilen nesne türünün ilk atasını alır. |
GetChild(NodeType, int, bool) | Belirtilen türle eşleşen N’inci alt düğümü döndürür. |
GetChildNodes(NodeType, bool) | Belirtilen türle eşleşen alt düğümlerin canlı bir koleksiyonunu döndürür. |
GetEnumerator() | Bu düğümün alt düğümleri üzerindeki her stil yinelemesi için destek sağlar. |
override GetText() | Bu düğümün ve tüm alt düğümlerinin metnini alır. |
IndexOf(Node) | Alt düğüm dizisindeki belirtilen alt düğümün dizinini döndürür. |
InsertAfter<T>(T, Node) | Belirtilen düğümü belirtilen referans düğümünden hemen sonra ekler. |
InsertBefore<T>(T, Node) | Belirtilen düğümü belirtilen referans düğümünden hemen önce ekler. |
NextPreOrder(Node) | Ön sipariş ağacı geçiş algoritmasına göre bir sonraki düğümü alır. |
PrependChild<T>(T) | Belirtilen düğümü bu düğüm için alt düğümler listesinin başına ekler. |
PreviousPreOrder(Node) | Ön sipariş ağacı geçiş algoritmasına göre önceki düğümü alır. |
Remove() | Kendini ana öğeden kaldırır. |
RemoveAllChildren() | Geçerli düğümün tüm alt düğümlerini kaldırır. |
RemoveChild<T>(T) | Belirtilen alt düğümü kaldırır. |
RemoveSmartTags() | Tümünü kaldırırSmartTag geçerli düğümün alt düğümleri. |
SelectNodes(string) | XPath ifadesiyle eşleşen düğümlerin bir listesini seçer. |
SelectSingleNode(string) | İlkini seçerNode XPath ifadesiyle eşleşen. |
ToString(SaveFormat) | Düğümün içeriğini belirtilen biçimde bir dizeye aktarır. |
ToString(SaveOptions) | Belirtilen kaydetme seçeneklerini kullanarak düğümün içeriğini bir dizeye aktarır. |
Notlar
BuildingBlock
sadece içerebilirSection
düğümler.
BuildingBlock
sadece bir çocuk olabilirGlossaryDocument
.
Yeni yapı taşları oluşturabilir ve bunları bir sözlük belgesine ekleyebilirsiniz. Mevcut yapı taşlarını değiştirebilir veya silebilirsiniz. Yapı taşlarını belgeler arasında kopyalayabilir veya taşıyabilirsiniz. Bir yapı taşının içeriğini bir belgeye ekleyebilirsiniz.
Karşılık gelirdocPart ,docPartPr VedocPartGövdeOOXML’deki öğeler.
Örnekler
Bir belgeye özel yapı taşının nasıl ekleneceğini gösterir.
public void CreateAndInsert()
{
// Bir belgenin sözlük belgesi yapı taşlarını depolar.
Document doc = new Document();
GlossaryDocument glossaryDoc = new GlossaryDocument();
doc.GlossaryDocument = glossaryDoc;
// Bir yapı taşı oluşturun, ona bir isim verin ve ardından sözlük belgesine ekleyin.
BuildingBlock block = new BuildingBlock(glossaryDoc)
{
Name = "Custom Block"
};
glossaryDoc.AppendChild(block);
// Tüm yeni yapı taşı GUID'leri varsayılan olarak aynı sıfır değerine sahiptir ve bunlara yeni ve benzersiz bir değer verebiliriz.
Assert.AreEqual("00000000-0000-0000-0000-000000000000", block.Guid.ToString());
block.Guid = Guid.NewGuid();
// Aşağıdaki özellikler yapı taşlarını kategorilere ayırır
// Microsoft Word'de "Ekle" -> "Hızlı Parçalar" -> "Yapı Blokları Düzenleyicisi" yoluyla ulaşabileceğimiz menüde.
Assert.AreEqual("(Empty Category)", block.Category);
Assert.AreEqual(BuildingBlockType.None, block.Type);
Assert.AreEqual(BuildingBlockGallery.All, block.Gallery);
Assert.AreEqual(BuildingBlockBehavior.Content, block.Behavior);
// Bu yapı taşını belgemize eklemeden önce, ona bazı içerikler vermemiz gerekecek,
// bunu bir belge ziyaretçisi kullanarak yapacağız. Bu ziyaretçi ayrıca bir kategori, galeri ve davranış belirleyecek.
BuildingBlockVisitor visitor = new BuildingBlockVisitor(glossaryDoc);
// BuildingBlock'un başlangıcını/sonunu ziyaret edin.
block.Accept(visitor);
// Az önce oluşturduğumuz bloğa sözlük belgesinden erişebiliriz.
BuildingBlock customBlock = glossaryDoc.GetBuildingBlock(BuildingBlockGallery.QuickParts,
"My custom building blocks", "Custom Block");
// Blok, metnin yer aldığı bölümdür.
Assert.AreEqual($"Text inside {customBlock.Name}\f", customBlock.FirstSection.Body.FirstParagraph.GetText());
Assert.AreEqual(customBlock.FirstSection, customBlock.LastSection);
// Şimdi bunu yeni bir bölüm olarak belgeye ekleyebiliriz.
doc.AppendChild(doc.ImportNode(customBlock.FirstSection, true));
// Bunu Microsoft Word'ün Building Blocks Organizer'ında da bulabilir ve elle yerleştirebiliriz.
doc.Save(ArtifactsDir + "BuildingBlocks.CreateAndInsert.dotx");
}
/// <summary>
/// Ziyaret edilen bir yapı bloğunun belgeye hızlı bir parça olarak eklenmesini ayarlar ve içeriğine metin ekler.
/// </summary>
public class BuildingBlockVisitor : DocumentVisitor
{
public BuildingBlockVisitor(GlossaryDocument ownerGlossaryDoc)
{
mBuilder = new StringBuilder();
mGlossaryDoc = ownerGlossaryDoc;
}
public override VisitorAction VisitBuildingBlockStart(BuildingBlock block)
{
// Yapı bloğunu hızlı bir parça olarak yapılandırın ve Yapı Blokları Düzenleyicisi tarafından kullanılan özellikleri ekleyin.
block.Behavior = BuildingBlockBehavior.Paragraph;
block.Category = "My custom building blocks";
block.Description =
"Using this block in the Quick Parts section of word will place its contents at the cursor.";
block.Gallery = BuildingBlockGallery.QuickParts;
// Metin içeren bir bölüm ekleyin.
// Bloğun belgeye eklenmesi, bu bölümü alt düğümleriyle birlikte konuma ekleyecektir.
Section section = new Section(mGlossaryDoc);
block.AppendChild(section);
block.FirstSection.EnsureMinimum();
Run run = new Run(mGlossaryDoc, "Text inside " + block.Name);
block.FirstSection.Body.FirstParagraph.AppendChild(run);
return VisitorAction.Continue;
}
public override VisitorAction VisitBuildingBlockEnd(BuildingBlock block)
{
mBuilder.Append("Visited " + block.Name + "\r\n");
return VisitorAction.Continue;
}
private readonly StringBuilder mBuilder;
private readonly GlossaryDocument mGlossaryDoc;
}
Ayrıca bakınız
- class CompositeNode
- ad alanı Aspose.Words.BuildingBlocks
- toplantı Aspose.Words