התאמה אישית של מאפייני שדה

Aspose.Words מספק את היכולת לתקשר באופן פרוגרמטי עם מאפייני שדה שונים. במאמר זה נבחן כמה דוגמאות כדי שתבינו את העיקרון הבסיסי של עבודה עם מאפייני שדה. אתה יכול לראות את הרשימה המלאה של מאפיינים עבור כל סוג שדה בכיתה המתאימה ב Fields namespace.

עדכון נכס שדה

לפעמים משתמשים צריכים לשנות את הערך של נכס שדה. לדוגמה, עדכן את המאפיין AuthorName של השדה AUTHOR או שנה את המאפיין FieldName של השדה MERGEFIELD.

דוגמת הקוד הבאה מראה כיצד לשנות את שם שדות המיזוג במסמך Word:

//For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
auto doc = MakeObject<Document>();
auto builder = MakeObject<DocumentBuilder>(doc);
builder->InsertField(u"MERGEFIELD MyMergeField1 \\* MERGEFORMAT");
builder->InsertField(u"MERGEFIELD MyMergeField2 \\* MERGEFORMAT");
// Select all field start nodes so we can find the merge fields.
SharedPtr<NodeCollection> fieldStarts = doc->GetChildNodes(NodeType::FieldStart, true);
for (const auto& fieldStart : System::IterateOver<FieldStart>(fieldStarts))
{
if (fieldStart->get_FieldType() == FieldType::FieldMergeField)
{
auto mergeField = MakeObject<WorkingWithFields::MergeField>(fieldStart);
mergeField->set_Name(mergeField->get_Name() + u"_Renamed");
}
}
doc->Save(ArtifactsDir + u"WorkingWithFields.RenameMergeFields.docx");

תוצאת תצוגת שדה

Aspose.Words מספק מאפיין להשגת תוצאת השדה עבור שדות שאין להם צומת מפריד שדה. אנו קוראים לזה “תוצאה מזויפת” או תוצאת תצוגה; Microsoft Word מציג אותו במסמך על ידי חישוב ערך השדה תוך כדי תנועה, אך אין ערך כזה במודל המסמך.

דוגמת הקוד הבאה מראה את השימוש במאפיין DisplayResult:

//For complete examples and data files, please go to https://github.com/aspose-words/Aspose.Words-for-C
auto doc = MakeObject<Document>(MyDir + u"Various fields.docx");
doc->UpdateFields();
for (const auto& field : System::IterateOver(document->get_Range()->get_Fields()))
{
std::cout << field->get_DisplayResult() << std::endl;
}