کار با Content Control SDT
در Microsoft Word، میتوانید با شروع با یک الگو و اضافه کردن کنترلهای محتوا، از جمله چک باکس، جعبه متن، انتخابگر تاریخ و لیستهای کشویی، فرم ایجاد کنید. در Aspose.Words، یک تگ سند ساختاریافته یا کنترل محتوا از هر سند بارگیری شده در Aspose.Words به عنوان یک گره StructuredDocumentTag وارد می شود. تگهای سند ساختاریافته (SDT یا کنترل محتوا) امکان تعبیه معنایی تعریف شده توسط مشتری و همچنین رفتار و ظاهر آن را در یک سند میدهد. StructuredDocumentTag می تواند در یک سند در مکان های زیر رخ دهد:
- سطح بلوک - در میان پاراگراف ها و جداول، به عنوان فرزند یک گره Body، HeaderFooter، Comment، Footnote یا Shape
- سطح ردیف - در میان ردیفهای یک جدول، به عنوان فرزند یک گره Table
- سطح سلول - در میان سلول های یک ردیف جدول، به عنوان فرزند یک گره Row
- سطح درون خطی - در میان محتوای درون خطی داخل، به عنوان فرزند یک Paragraph
- تو در داخل یک StructuredDocumentTag دیگر
درج کنترل های محتوا در یک سند
در این نسخه از Aspose.Words، انواع SDT یا کنترل محتوا را می توان ایجاد کرد:
- Checkbox
- DropDownList
- ComboBox
- Date
- BuildingBlockGallery
- Group
Picture
- RichText
- PlainText
مثال کد زیر نحوه ایجاد کنترل محتوا از نوع چک باکس را نشان می دهد.
مثال کد زیر نحوه ایجاد کنترل محتوا از نوع جعبه متن غنی را نشان می دهد.
مثال کد زیر نحوه ایجاد کنترل محتوای جعبه ترکیبی نوع را نشان می دهد.
نحوه به روز رسانی کنترل های محتوا
این بخش نحوه به روز رسانی مقادیر SDT یا کنترل محتوا را به صورت برنامه ای توضیح می دهد
مثال کد زیر نحوه تنظیم وضعیت فعلی چک باکس را نشان می دهد:
مثال کد زیر نحوه تغییر کنترل های محتوا از نوع جعبه متن ساده، لیست کشویی و تصویر را نشان می دهد:
اتصال کنترل محتوا به قطعات XML سفارشی
میتوانید کنترلهای محتوا را با دادههای XML (بخش XML سفارشی) در اسناد Word متصل کنید.
مثال کد زیر نحوه اتصال کنترل محتوا به قطعات XML سفارشی را نشان می دهد:
XMLMapping محدوده تگ سند ساختاریافته
میتوانید نگاشت این محدوده تگ سند ساختاریافته به دادههای XML را در بخش XML سفارشی سند فعلی با استفاده از ویژگی StructuredDocumentTagRangeStart.xml_mapping دریافت کنید. با این حال، روش set_mapping می تواند برای نگاشت محدوده تگ سند ساختاریافته به داده های XML استفاده شود.
مثال کد زیر نحوه تنظیم نگاشت XML را نشان می دهد:
محتویات یک کنترل محتوا را پاک کنید
می توانید محتویات یک کنترل محتوا را با نمایش مکان نگهدار پاک کنید. روش StructuredDocumentTag.clear محتویات این تگ سند ساختاریافته را پاک می کند و در صورت تعریف یک مکان نگهدار نمایش می دهد. با این حال، پاک کردن محتوای یک کنترل محتوا در صورتی که دارای بازبینی باشد، امکان پذیر نیست. اگر یک کنترل محتوا فاقد مکاننما باشد، پنج فاصله مانند MS Word درج میشود (به جز بخشهای تکراری، موارد تکراری بخش، گروهها، چک باکسها، نقلقولها). اگر یک کنترل محتوا به XML سفارشی نگاشت شود، گره XML ارجاع شده پاک می شود.
مثال کد زیر نحوه پاک کردن محتوای کنترل محتوا را نشان می دهد:
تغییر رنگ پس زمینه و حاشیه کنترل محتوا
ویژگی StructuredDocumentTag.color به شما امکان می دهد رنگ کنترل محتوا را دریافت یا تنظیم کنید. رنگ در دو موقعیت بر کنترل محتوا تأثیر می گذارد:
- MS Word پسزمینه کنترل محتوا را هنگامی که ماوس روی کنترل محتوا حرکت میکند، برجسته میکند. این به شناسایی کنترل محتوا کمک می کند. رنگ هایلایت کمی “نرم تر” از color است. برای مثال، زمانی که color قرمز است، MS Word پسزمینه را با رنگ صورتی برجسته میکند.
- وقتی با کنترل محتوا تعامل دارید (ویرایش، انتخاب و غیره)، مرز کنترل محتوا با color رنگ می شود.
مثال کد زیر نحوه تغییر رنگ کنترل محتوا را نشان می دهد:
نحوه تنظیم سبک برای قالب بندی متن تایپ شده در کنترل محتوا
اگر می خواهید سبک کنترل محتوا را تنظیم کنید، می توانید از ویژگی های StructuredDocumentTag.style یا StructuredDocumentTag.style_name استفاده کنید. هنگامی که متن را در کنترل محتوا در سند خروجی تایپ می کنید، متن تایپ شده دارای سبک “نقل قول” خواهد بود.
مثال کد زیر نحوه تنظیم سبک کنترل محتوا را نشان می دهد:
کار با Repeating Section Content Control
کنترل محتوای بخش تکرار شونده امکان تکرار محتوای موجود در آن را فراهم می کند. با استفاده از Aspose.Words میتوان گرههای تگ سند ساختاریافته از بخش تکرارکننده و انواع آیتمهای بخش تکرارشونده ایجاد کرد و برای این منظور، نوع شمارش SdtType ویژگی REPEATING_SECTION_ITEM را ارائه میکند.
مثال کد زیر نحوه اتصال یک کنترل محتوای بخش تکرار شونده را به جدول نشان می دهد: