FieldNoteRef
محتويات
[
يخفي
]FieldNoteRef class
ينفذ حقل NOTEREF.
لمعرفة المزيد، قم بزيارةالعمل مع الحقول مقالة توثيقية.
public class FieldNoteRef : Field
المنشئون
اسم | وصف |
---|---|
FieldNoteRef() | Default_Constructor |
الخصائص
اسم | وصف |
---|---|
BookmarkName { get; set; } | يحصل على اسم الإشارة المرجعية أو يعينه. |
DisplayResult { get; } | يحصل على النص الذي يمثل نتيجة الحقل المعروضة. |
End { get; } | يحصل على العقدة التي تمثل نهاية الحقل. |
Format { get; } | يحصل علىFieldFormat الكائن الذي يوفر الوصول المكتوب إلى تنسيق الحقل. |
InsertHyperlink { get; set; } | يحصل على أو يحدد ما إذا كان سيتم إدراج ارتباط تشعبي إلى الفقرة المرجعية. |
InsertReferenceMark { get; set; } | يقوم بإدراج علامة مرجعية بنفس تنسيق الأحرف مثل نمط مرجع الحاشية السفلية أو مرجع الحاشية النهائية. |
InsertRelativePosition { get; set; } | يحصل على أو يحدد ما إذا كان سيتم إدراج موضع نسبي للفقرة المرجعية. |
IsDirty { get; set; } | يحصل على أو يحدد ما إذا كانت النتيجة الحالية للحقل لم تعد صحيحة (قديمة) بسبب التعديلات الأخرى التي تم إجراؤها على المستند. |
IsLocked { get; set; } | يحصل على أو يحدد ما إذا كان الحقل مقفلاً (لا ينبغي إعادة حساب نتيجته). |
LocaleId { get; set; } | يحصل على أو يعين LCID للحقل. |
Result { get; set; } | يحصل على النص الموجود بين فاصل الحقل ونهاية الحقل أو يعينه. |
Separator { get; } | يحصل على العقدة التي تمثل فاصل الحقل. يمكن أن يكونباطل . |
Start { get; } | يحصل على العقدة التي تمثل بداية الحقل. |
virtual Type { get; } | يحصل على نوع حقل Microsoft Word. |
طُرق
اسم | وصف |
---|---|
GetFieldCode() | يعيد النص بين بداية الحقل وفاصل الحقل (أو نهاية الحقل إذا لم يكن هناك فاصل). يتم تضمين كل من رمز الحقل ونتيجة الحقل للحقول الفرعية. |
GetFieldCode(bool) | إرجاع النص بين بداية الحقل وفاصل الحقل (أو نهاية الحقل إذا لم يكن هناك فاصل). |
Remove() | يُزيل الحقل من المستند. يُرجع عقدة بعد الحقل مباشرةً. إذا كانت نهاية الحقل هي آخر عقدة فرعية للعقدة الأصلية، تُرجع فقرته الأصلية. إذا كان الحقل قد حُذف مُسبقًا، تُرجعباطل . |
Unlink() | يقوم بإلغاء ربط الحقل. |
Update() | يُجري تحديث الحقل. يُطرح هذا الخطأ إذا كان الحقل قيد التحديث بالفعل. |
Update(bool) | يُجري تحديثًا للحقل. يُطرح هذا الخطأ إذا كان الحقل قيد التحديث بالفعل. |
ملاحظات
يقوم بإدراج علامة الحاشية السفلية أو الختامية التي تم وضع علامة عليها بواسطة الإشارة المرجعية المحددة.
أمثلة
يوضح كيفية ربط الحواشي السفلية مع الحقل NOTEREF.
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
builder.Write("CrossReference: ");
FieldNoteRef field = (FieldNoteRef)builder.InsertField(FieldType.FieldNoteRef, false); // <--- لا تقم بتحديث الحقل
field.BookmarkName = "CrossRefBookmark";
field.InsertHyperlink = true;
field.InsertReferenceMark = true;
field.InsertRelativePosition = false;
builder.Writeln();
builder.StartBookmark("CrossRefBookmark");
builder.Write("Hello world!");
builder.InsertFootnote(FootnoteType.Footnote, "Cross referenced footnote.");
builder.EndBookmark("CrossRefBookmark");
builder.Writeln();
doc.UpdateFields();
//يعمل هذا الحقل فقط في الإصدارات القديمة من Microsoft Word.
doc.Save(ArtifactsDir + "Field.NOTEREF.doc");
يوضح كيفية إدراج حقول NOTEREF وتعديل مظهرها.
public void FieldNoteRef()
{
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);
// قم بإنشاء إشارة مرجعية تحتوي على حاشية سفلية سيشير إليها حقل NOTREF.
InsertBookmarkWithFootnote(builder, "MyBookmark1", "Contents of MyBookmark1", "Footnote from MyBookmark1");
// سيعرض حقل NOTEREF هذا رقم الحاشية السفلية داخل الإشارة المرجعية.
// يتيح لنا تعيين خاصية InsertHyperlink الانتقال إلى الإشارة المرجعية عن طريق الضغط على Ctrl والنقر فوق الحقل في Microsoft Word.
Assert.AreEqual(" NOTEREF MyBookmark2 \\h",
InsertFieldNoteRef(builder, "MyBookmark2", true, false, false, "Hyperlink to Bookmark2, with footnote number ").GetFieldCode());
// عند استخدام علامة \p، بعد رقم الحاشية السفلية، يعرض الحقل أيضًا موضع الإشارة المرجعية بالنسبة للحقل.
// Bookmark1 يقع أعلى هذا الحقل ويحتوي على رقم الحاشية السفلية 1، لذا ستكون النتيجة "1 أعلى" عند التحديث.
Assert.AreEqual(" NOTEREF MyBookmark1 \\h \\p",
InsertFieldNoteRef(builder, "MyBookmark1", true, true, false, "Bookmark1, with footnote number ").GetFieldCode());
// Bookmark2 يقع أسفل هذا الحقل ويحتوي على رقم الحاشية السفلية 2، لذا سيعرض الحقل "2 أدناه".
// يجعل العلم \f الرقم 2 يظهر بنفس تنسيق تسمية رقم الحاشية السفلية في النص الفعلي.
Assert.AreEqual(" NOTEREF MyBookmark2 \\h \\p \\f",
InsertFieldNoteRef(builder, "MyBookmark2", true, true, true, "Bookmark2, with footnote number ").GetFieldCode());
builder.InsertBreak(BreakType.PageBreak);
InsertBookmarkWithFootnote(builder, "MyBookmark2", "Contents of MyBookmark2", "Footnote from MyBookmark2");
doc.UpdatePageLayout();
doc.UpdateFields();
doc.Save(ArtifactsDir + "Field.NOTEREF.docx");
}
/// <summary>
/// يستخدم منشئ المستندات لإدراج حقل NOTEREF بالخصائص المحددة.
/// </summary>
private static FieldNoteRef InsertFieldNoteRef(DocumentBuilder builder, string bookmarkName, bool insertHyperlink, bool insertRelativePosition, bool insertReferenceMark, string textBefore)
{
builder.Write(textBefore);
FieldNoteRef field = (FieldNoteRef)builder.InsertField(FieldType.FieldNoteRef, true);
field.BookmarkName = bookmarkName;
field.InsertHyperlink = insertHyperlink;
field.InsertRelativePosition = insertRelativePosition;
field.InsertReferenceMark = insertReferenceMark;
builder.Writeln();
return field;
}
/// <summary>
/// يستخدم منشئ المستندات لإدراج إشارة مرجعية مسماة مع حاشية سفلية في النهاية.
/// </summary>
private static void InsertBookmarkWithFootnote(DocumentBuilder builder, string bookmarkName, string bookmarkText, string footnoteText)
{
builder.StartBookmark(bookmarkName);
builder.Write(bookmarkText);
builder.InsertFootnote(FootnoteType.Footnote, footnoteText);
builder.EndBookmark(bookmarkName);
builder.Writeln();
}
أنظر أيضا
- class Field
- مساحة الاسم Aspose.Words.Fields
- المجسم Aspose.Words