DocumentPropertyCollection

DocumentPropertyCollection class

الفئة الأساسية لـBuiltInDocumentProperties وCustomDocumentProperties المجموعات.

لمعرفة المزيد، قم بزيارةالعمل مع خصائص الوثيقة مقالة توثيقية.

public abstract class DocumentPropertyCollection : IEnumerable<DocumentProperty>

الخصائص

اسموصف
Count { get; }الحصول على عدد العناصر الموجودة في المجموعة.
Item { get; }إرجاع أDocumentProperty كائن حسب الفهرس.
virtual Item { get; }إرجاع أDocumentProperty كائن باسم الخاصية.

طُرق

اسموصف
Clear()إزالة كافة الخصائص من المجموعة.
Contains(string)إرجاعحقيقي في حالة وجود خاصية بالاسم المحدد في المجموعة.
GetEnumerator()إرجاع كائن العداد الذي يمكن استخدامه للتكرار على كافة العناصر الموجودة في المجموعة.
IndexOf(string)الحصول على فهرس الخاصية بالاسم.
Remove(string)إزالة خاصية بالاسم المحدد من المجموعة.
RemoveAt(int)إزالة خاصية في الفهرس المحدد.

ملاحظات

أسماء الخصائص غير حساسة لحالة الأحرف.

يتم فرز الخصائص الموجودة في المجموعة أبجديًا حسب الاسم.

أمثلة

يوضح كيفية التعامل مع الخصائص المخصصة للمستند.

Document doc = new Document();
CustomDocumentProperties properties = doc.CustomDocumentProperties;

Assert.AreEqual(0, properties.Count);

// خصائص المستند المخصصة هي أزواج ذات قيمة أساسية يمكننا إضافتها إلى المستند.
properties.Add("Authorized", true);
properties.Add("Authorized By", "John Doe");
properties.Add("Authorized Date", DateTime.Today);
properties.Add("Authorized Revision", doc.BuiltInDocumentProperties.RevisionNumber);
properties.Add("Authorized Amount", 123.45);

// تقوم المجموعة بفرز الخصائص المخصصة بالترتيب الأبجدي.
Assert.AreEqual(1, properties.IndexOf("Authorized Amount"));
Assert.AreEqual(5, properties.Count);

// اطبع كل خاصية مخصصة في المستند.
using (IEnumerator<DocumentProperty> enumerator = properties.GetEnumerator())
{
    while (enumerator.MoveNext())
        Console.WriteLine($"Name: \"{enumerator.Current.Name}\"\n\tType: \"{enumerator.Current.Type}\"\n\tValue: \"{enumerator.Current.Value}\"");
}

// اعرض قيمة الخاصية المخصصة باستخدام حقل DOCPROPERTY.
DocumentBuilder builder = new DocumentBuilder(doc);
FieldDocProperty field = (FieldDocProperty)builder.InsertField(" DOCPROPERTY \"Authorized By\"");
field.Update();

Assert.AreEqual("John Doe", field.Result);

// يمكننا العثور على هذه الخصائص المخصصة في Microsoft Word عبر "ملف" -> "الخصائص" > "خصائص متقدمة" > "مخصص".
doc.Save(ArtifactsDir + "DocumentProperties.DocumentPropertyCollection.docx");

// فيما يلي ثلاث طرق لإزالة الخصائص المخصصة من المستند.
// 1 - الإزالة حسب الفهرس:
properties.RemoveAt(1);

Assert.False(properties.Contains("Authorized Amount"));
Assert.AreEqual(4, properties.Count);

// 2 - الإزالة بالاسم:
properties.Remove("Authorized Revision");

Assert.False(properties.Contains("Authorized Revision"));
Assert.AreEqual(3, properties.Count);

// 3 - إفراغ المجموعة بأكملها مرة واحدة:
properties.Clear();

Assert.AreEqual(0, properties.Count);

أنظر أيضا