This article was translated by machine. To view in the article in English, select the English check box. You can also display the English text in a popup window by moving the mouse pointer over the text.
الترجمة
الأصلي
This documentation is archived and is not being maintained.

DesignerAutoFormat الفئة

Visual Studio 2010

يوفر الفئة مجردة الأساسية لإنشاء التنسيقات التي يمكن تطبيق مخصص عنصر تحكم خادم ويب في وقت التصميم.

مساحة الاسم:  System.Web.UI.Design
التجميع:  System.Design (في System.Design.dll)

public abstract class DesignerAutoFormat

DesignerAutoFormat توفر فئة أساسية يمكن موروثة من وتوسيع إلى عرض cusإلىm منسق عنصر تحكم الخادم ويب في وقت التصميم في مرئية مصمم إلى ol مثلVisual Studio 2005.

يوفر مطور عنصر تحكم تنسيق آلى مساعدة المطورين الذين يقومون باستخدام عنصر التحكم لتحديد شاشة مفضل. مخصص DesignerAutoFormatيعمل الكائن باستخدام مصمم عنصر تحكم مخصص لتوفير تنسيق آلى وقت التصميم لعنصر التحكم المخصص. على سبيل المثال، Calendarعنصر تحكم يوفر مجموعة متنوعة من التنسيقات التي يمكن تطبيقها من قبل مطور موجود في وقت التصميم.

لتطبيق تنسيق آلى لعنصر تحكم مخصص:

  1. إنشاء عنصر تحكم مخصص.

  2. Derive a مصمم فئة من the ControlDesigner فئة أو another مصمم فئة that هو appropriate for your عنصر تحكم, such كـ the TextControlDesigner.

  3. Derive a تنسيق فئة من the DesignerAutoFormat فئة that التنسيقات your مخصص عنصر تحكم بواسطة overriding the Apply أسلوب.

  4. في your مصمم فئة, يملأ the AutoFormats خاصية, which هو a DesignerAutoFormatCollection كائن, مع واحد مثيل of your تنسيق فئة for each named تنسيق that your مصمم can يطبق.

The DesignerAutoFormat فئة provides the following الأعضاء إلى دعم تلقائي تنسيق at تصميم الوقت:

  • The Apply أسلوب, which applies the named تنسيق إلى the specified عنصر تحكم.

  • GetPreviewControl الأسلوب، والتي توفر نسخ من عنصر التحكم لمعاينة في التنسيق التلقائي صندوق حوار مصمم المرئية مثل Visual Studio 2005.

  • Name خاصية، يعرض نص إلى عرض في قائمة التنسيقات في مصمم Visual.

ملاحظات للمسئولين عن الإرث

متى يورث DesignerAutoFormatفئة، يجب يمنع Applyأسلوب إلى معاينة عنصر تحكم تم تنسيقه و إلى لتطبيق تنسيق محدد إلى عنصر التحكم الخاص بك.

يلي تعليمات برمجية مثال يوضح كيفية تطبيق تنسيق تلقائي في مصمم عنصر تحكم مخصص. مشتق عنصر تحكم يطبق مصمم AutoFormatsخاصية بواسطة إضافة مثيلات تنسيق تلقائي مخصص المشتقة من ثلاث DesignerAutoFormatفئة.


using System;
using System.Drawing;
using System.Collections;
using System.ComponentModel;
using System.Web.UI;
using System.Web.UI.Design;
using System.Web.UI.Design.WebControls;
using System.Web.UI.WebControls;

namespace CustomControls.Design.CS
{
	// A custom Label control whose contents can be indented
    [Designer(typeof(IndentLabelDesigner)), 
        ToolboxData("<{0}:IndentLabel Runat=\"server\"></{0}:IndentLabel>")]
    public class IndentLabel : Label
    {
        private int _indent = 0;

        // Property to indent all text within the label
        [Category("Appearance"), DefaultValue(0), 
            PersistenceMode(PersistenceMode.Attribute)]
        public int Indent
        {
            get { return _indent; }
            set
            {
                _indent = value;
                // Get the number of pixels to indent
                int ind = value * 8;

                //  Add the indent style to the control
                if (ind > 0)
                    this.Style.Add(HtmlTextWriterStyle.MarginLeft, ind.ToString() + "px");
                else
                    this.Style.Remove(HtmlTextWriterStyle.MarginLeft);
            }
        }
    }


	// A design-time ControlDesigner for the IndentLabel control
    [SupportsPreviewControl(true)]
    public class IndentLabelDesigner : LabelDesigner
    {
        private DesignerAutoFormatCollection _autoFormats = null;

		// The collection of AutoFormat objects for the IndentLabel object
        public override DesignerAutoFormatCollection AutoFormats
        {
            get
            {
                if (_autoFormats == null)
                {
					// Create the collection
                    _autoFormats = new DesignerAutoFormatCollection();

					// Create and add each AutoFormat object
                    _autoFormats.Add(new IndentLabelAutoFormat("MyClassic"));
                    _autoFormats.Add(new IndentLabelAutoFormat("MyBright"));
                    _autoFormats.Add(new IndentLabelAutoFormat("Default"));
                }
                return _autoFormats;
            }
        }

	    // An AutoFormat object for the IndentLabel control
        private class IndentLabelAutoFormat : DesignerAutoFormat
        {
		    public IndentLabelAutoFormat(string name) : base(name)
		    { }

		    // Applies styles based on the Name of the AutoFormat
            public override void Apply(Control inLabel)
            {
                if (inLabel is IndentLabel)
                {
                    IndentLabel ctl = (IndentLabel)inLabel;

				    // Apply formatting according to the Name
                    if (this.Name == "MyClassic")
                    {
					    // For MyClassic, apply style elements directly to the control
                        ctl.ForeColor = Color.Gray;
                        ctl.BackColor = Color.LightGray;
                        ctl.Font.Size = FontUnit.XSmall;
                        ctl.Font.Name = "Verdana,Geneva,Sans-Serif";
                    }
                    else if (this.Name == "MyBright")
                    {
					    // For MyBright, apply style elements to the Style property
                        this.Style.ForeColor = Color.Maroon;
					    this.Style.BackColor = Color.Yellow;
					    this.Style.Font.Size = FontUnit.Medium;

					    // Merge the AutoFormat style with the control's style
					    ctl.MergeStyle(this.Style);
                    }
                    else
                    {
					    // For the Default format, apply style elements to the control
                        ctl.ForeColor = Color.Black;
                        ctl.BackColor = Color.Empty;
                        ctl.Font.Size = FontUnit.XSmall;
                    }
                }
            }
        }
    }
}


System.Object
  System.Web.UI.Design.DesignerAutoFormat

يتم تأمين العملية الجزئية لأي عضو عمومي ثابت (مشترك في Visual Basic) من هذا النوع. لن يتم ضمان تأمين العملية الجزئية لأي عضو مثيل.

نظام التشغيل Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, الإصدار x64 من نظام التشغيل Windows XP Professional, Windows XP Starter Edition, Windows Server 2008, نظام التشغيل Windows Server 2003, نظام التشغيل Windows Server 2000 المزود بحزمة الخدمة SP4, نظام التشغيل Windows Millennium Edition, نظام التشغيل Windows 98

لا يدعم .NET Framework و .NET Compact Framework كافة الإصدارات الخاصة بكل نظام أساسي. للحصول على قائمة بالإصدارات المدعمة، راجع متطلبات النظام إطار عمل .NET.

.NET Framework

مدعوم في: 4, 3.5, 3.0, 2.0
إظهار: