ConditionalStyle

ConditionalStyle class

يمثل تنسيقًا خاصًا مطبقًا على بعض مناطق الجدول بنمط الجدول المخصص.

public sealed class ConditionalStyle

الخصائص

اسم وصف
Borders { get; } الحصول على مجموعة حدود الخلية الافتراضية للنمط الشرطي.
BottomPadding { get; set; } الحصول على أو تحديد مقدار المساحة (بالنقاط) لإضافتها أسفل محتويات خلايا الجدول.
Font { get; } الحصول على تنسيق الأحرف للنمط الشرطي.
LeftPadding { get; set; } الحصول على أو تحديد مقدار المساحة (بالنقاط) لإضافتها إلى يسار محتويات خلايا الجدول.
ParagraphFormat { get; } الحصول على تنسيق الفقرة للنمط الشرطي.
RightPadding { get; set; } الحصول على أو تحديد مقدار المساحة (بالنقاط) لإضافتها إلى يمين محتويات خلايا الجدول.
Shading { get; } يحصل على أShading كائن يشير إلى تنسيق التظليل لهذا النمط الشرطي.
TopPadding { get; set; } الحصول على أو تحديد مقدار المساحة (بالنقاط) للإضافة فوق محتويات خلايا الجدول.
Type { get; } الحصول على منطقة الجدول التي يرتبط بها هذا النمط الشرطي.

طُرق

اسم وصف
ClearFormatting() مسح تنسيق هذا النمط الشرطي.
override Equals(object)
override GetHashCode() حساب كود التجزئة لهذا الكائن.

أمثلة

يوضح كيفية التعامل مع أنماط منطقة معينة في الجدول.

Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

Table table = builder.StartTable();
builder.InsertCell();
builder.Write("Cell 1");
builder.InsertCell();
builder.Write("Cell 2");
builder.EndRow();
builder.InsertCell();
builder.Write("Cell 3");
builder.InsertCell();
builder.Write("Cell 4");
builder.EndTable();

// إنشاء نمط جدول مخصص.
TableStyle tableStyle = (TableStyle)doc.Styles.Add(StyleType.Table, "MyTableStyle1");

// الأنماط الشرطية هي تغييرات تنسيق تؤثر فقط على بعض خلايا الجدول
// استنادًا إلى المسند ، مثل وجود الخلايا في الصف الأخير.
// فيما يلي ثلاث طرق للوصول إلى الأنماط الشرطية لنمط الجدول من مجموعة "ConditionalStyles".
// 1 - حسب نوع النمط:
tableStyle.ConditionalStyles[ConditionalStyleType.FirstRow].Shading.BackgroundPatternColor = Color.AliceBlue;

// 2 - حسب الفهرس:
tableStyle.ConditionalStyles[0].Borders.Color = Color.Black;
tableStyle.ConditionalStyles[0].Borders.LineStyle = LineStyle.DotDash;
Assert.AreEqual(ConditionalStyleType.FirstRow, tableStyle.ConditionalStyles[0].Type);

// 3 - كممتلكات:
tableStyle.ConditionalStyles.FirstRow.ParagraphFormat.Alignment = ParagraphAlignment.Center;

// تطبيق تنسيق النص والحشو على الأنماط الشرطية.
tableStyle.ConditionalStyles.LastRow.BottomPadding = 10;
tableStyle.ConditionalStyles.LastRow.LeftPadding = 10;
tableStyle.ConditionalStyles.LastRow.RightPadding = 10;
tableStyle.ConditionalStyles.LastRow.TopPadding = 10;
tableStyle.ConditionalStyles.LastColumn.Font.Bold = true;

// قائمة بجميع شروط النمط الممكنة.
using (IEnumerator<ConditionalStyle> enumerator = tableStyle.ConditionalStyles.GetEnumerator())
{
    while (enumerator.MoveNext())
    {
        ConditionalStyle currentStyle = enumerator.Current;
        if (currentStyle != null) Console.WriteLine(currentStyle.Type);
    }
}

// قم بتطبيق النمط المخصص ، الذي يحتوي على جميع الأنماط الشرطية ، على الجدول.
table.Style = tableStyle;

// يطبق أسلوبنا بعض الأنماط الشرطية افتراضيًا.
Assert.AreEqual(TableStyleOptions.FirstRow | TableStyleOptions.FirstColumn | TableStyleOptions.RowBands, 
    table.StyleOptions);

// سنحتاج إلى تمكين جميع الأنماط الأخرى بأنفسنا عبر خاصية "StyleOptions".
table.StyleOptions = table.StyleOptions | TableStyleOptions.LastRow | TableStyleOptions.LastColumn;

doc.Save(ArtifactsDir + "Table.ConditionalStyles.docx");

أنظر أيضا