İngilizce dilinde oku

Aracılığıyla paylaş


IRootDesigner Arabirim

Tanım

Kök düzeyinde tasarımcı görünüm teknolojileri için destek sağlar.

C#
public interface IRootDesigner : IDisposable, System.ComponentModel.Design.IDesigner
C#
[System.Runtime.InteropServices.ComVisible(true)]
public interface IRootDesigner : IDisposable, System.ComponentModel.Design.IDesigner
C#
public interface IRootDesigner : System.ComponentModel.Design.IDesigner
Türetilmiş
Öznitelikler
Uygulamalar

Örnekler

Aşağıdaki kod örneği, örnek kullanıcı denetimiyle ilişkili bir uygulamayı gösterir IRootDesigner . Bu IRootDesigner uygulama, yöntemini geçersiz kılarak tasarımcı görünümünde arka plan görünümü için GetView bir denetim görüntüler. Örneği derlemek için System.Design derlemesine bir başvuru eklemeniz gerekir.

Bu örneği kullanmak için bir projeye kaynak kodu ekleyin ve RootViewSampleComponent özel kök tasarımcı görünümünü görüntülemek için tasarımcı görünümünde görüntüleyin.

C#
using System;
using System.Collections;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Diagnostics;
using System.Drawing;
using System.Windows.Forms;
using System.Windows.Forms.Design;

namespace SampleRootDesigner
{	
    // This sample demonstrates how to provide the root designer view, or
    // design mode background view, by overriding IRootDesigner.GetView().

    // This sample component inherits from RootDesignedComponent which 
    // uses the SampleRootDesigner.
    public class RootViewSampleComponent : RootDesignedComponent
    {
        public RootViewSampleComponent()
        {
        }
    }

    // The following attribute associates the SampleRootDesigner designer 
    // with the SampleComponent component.
    [Designer(typeof(SampleRootDesigner), typeof(IRootDesigner))]
    public class RootDesignedComponent : Component
    {
        public RootDesignedComponent()
        {
        }
    }

    public class SampleRootDesigner : ComponentDesigner, IRootDesigner
    {
        // Member field of custom type RootDesignerView, a control that 
        // will be shown in the Forms designer view. This member is 
        // cached to reduce processing needed to recreate the 
        // view control on each call to GetView().
        private RootDesignerView m_view;			

        // This method returns an instance of the view for this root
        // designer. The "view" is the user interface that is presented
        // in a document window for the user to manipulate. 
        object IRootDesigner.GetView(ViewTechnology technology) 
        {
            if (technology != ViewTechnology.Default)
            {
                throw new ArgumentException("Not a supported view technology", "technology");
            }
            if (m_view == null)
            {
                   // Some type of displayable Form or control is required 
                   // for a root designer that overrides GetView(). In this 
                   // example, a Control of type RootDesignerView is used.
                   // Any class that inherits from Control will work.
                m_view = new RootDesignerView(this);
            }
            return m_view;
        }

        // IRootDesigner.SupportedTechnologies is a required override for an
        // IRootDesigner. Default is the view technology used by this designer.  
        ViewTechnology[] IRootDesigner.SupportedTechnologies 
        {
            get
            {
                return new ViewTechnology[] {ViewTechnology.Default};
            }
        }

        // RootDesignerView is a simple control that will be displayed 
        // in the designer window.
        private class RootDesignerView : Control 
        {
            private SampleRootDesigner m_designer;

            public RootDesignerView(SampleRootDesigner designer)
            {
                m_designer = designer;
                BackColor = Color.Blue;
                Font = new Font(Font.FontFamily.Name, 24.0f);
            }

            protected override void OnPaint(PaintEventArgs pe)
            {
                base.OnPaint(pe);

                // Draws the name of the component in large letters.
                pe.Graphics.DrawString(m_designer.Component.Site.Name, Font, Brushes.Yellow, ClientRectangle);
            }
        }		
    }
}

Açıklamalar

Kök tasarımcı, geçerli tasarım zamanı belge nesnesi hiyerarşisinin en üst konumunda veya kökünde yer alan tasarımcıdır. Kök tasarımcı arabirimini IRootDesigner uygulamalıdır. Kök tasarımcı genellikle arka plan görünümünü tasarımcı görünüm modunda yönetir ve denetimleri genellikle geçerli tasarım zamanı projesinin temel kapsayıcısında görüntüler.

Özellikler

Component

Bu tasarımcının tasarlıyor olduğu temel bileşeni alır.

(Devralındığı yer: IDesigner)
SupportedTechnologies

Bu tasarımcının ekranı için destekleyebilecek teknoloji kümesini alır.

Verbs

Tasarımcı tarafından desteklenen tasarım zamanı fiillerinin koleksiyonunu alır.

(Devralındığı yer: IDesigner)

Yöntemler

Dispose()

Uygulama tarafından tanımlanan, yönetilmeyen kaynakları serbest bırakma, salma veya sıfırlama ile ilişkili görevleri gerçekleştirir.

(Devralındığı yer: IDisposable)
DoDefaultAction()

Bu tasarımcı için varsayılan eylemi gerçekleştirir.

(Devralındığı yer: IDesigner)
GetView(ViewTechnology)

Belirtilen görünüm teknolojisi için bir görünüm nesnesi alır.

Initialize(IComponent)

Tasarımcıyı belirtilen bileşenle başlatır.

(Devralındığı yer: IDesigner)

Şunlara uygulanır

Ürün Sürümler
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1