IUIService IUIService IUIService IUIService Interface

定義

デザイナーをホストしている開発環境オブジェクトのユーザー インターフェイスとの対話を有効にします。Enables interaction with the user interface of the development environment object that is hosting the designer.

public interface class IUIService
[System.Runtime.InteropServices.Guid("06A9C74B-5E32-4561-BE73-381B37869F4F")]
public interface IUIService
type IUIService = interface
Public Interface IUIService
属性

次のコード例では、 IUIServiceのメソッドを呼び出すデザイナー動詞メニューコマンドを提供するデザイナーを作成します。The following code example creates a designer that provides designer verb menu commands that call methods of the IUIService. この例を使用するには、サンプルコードをアセンブリにコンパイルし、Windows フォームアプリケーションにアセンブリへの参照を追加します。To use the example, compile the sample code to an assembly, and add a reference to the assembly in a Windows Forms application. Visual Studio を使用している場合IUIServiceExampleControlは、が自動的にツールボックスに追加されます。If you are using Visual Studio, the IUIServiceExampleControl is automatically added to the Toolbox. のインスタンスIUIServiceExampleControlFormに追加します。Add an instance of the IUIServiceExampleControl to a Form. メソッドを呼び出すIUIServiceデザイナー動詞コマンドにアクセスするには、コントロールの画面を右クリックするか、コントロールのスマートタググリフをクリックして、スマートタグパネルから項目を選択します。To access the designer verb commands that invoke IUIService methods, either right-click on the control's surface or click on the control's smart tag glyph and select an item from the smart tag panel.

#using <System.dll>
#using <System.Windows.Forms.dll>
#using <System.Drawing.dll>
#using <System.Design.dll>

using namespace System;
using namespace System::ComponentModel;
using namespace System::ComponentModel::Design;
using namespace System::Drawing;
using namespace System::Windows::Forms;
using namespace System::Windows::Forms::Design;

// Provides an example Form class used by the
// IUIServiceTestDesigner::showDialog method.
ref class ExampleForm: public System::Windows::Forms::Form
{
public:
   ExampleForm()
   {
      this->Text = "Example Form";
      System::Windows::Forms::Button^ okButton = gcnew System::Windows::Forms::Button;
      okButton->Location = Point(this->Width - 70,this->Height - 70);
      okButton->Size = System::Drawing::Size( 50, 20 );
      okButton->Anchor = static_cast<AnchorStyles>(AnchorStyles::Right | AnchorStyles::Bottom);
      okButton->DialogResult = ::DialogResult::OK;
      okButton->Text = "OK";
      this->Controls->Add( okButton );
   }
};

// This designer provides a set of designer verb shortcut menu commands
// that call methods of the IUIService.
public ref class IUIServiceTestDesigner: public System::Windows::Forms::Design::ControlDesigner
{
public:
   IUIServiceTestDesigner(){}

   property System::ComponentModel::Design::DesignerVerbCollection^ Verbs 
   {
      // Provides a set of designer verb menu commands that call IUIService methods.
      virtual System::ComponentModel::Design::DesignerVerbCollection^ get() override
      {
         array<DesignerVerb^>^temp0 = {gcnew DesignerVerb( "Show a test message box using the IUIService",gcnew EventHandler( this, &IUIServiceTestDesigner::showTestMessage ) ),gcnew DesignerVerb( "Show a test error message using the IUIService",gcnew EventHandler( this, &IUIServiceTestDesigner::showErrorMessage ) ),gcnew DesignerVerb( "Show an example Form using the IUIService",gcnew EventHandler( this, &IUIServiceTestDesigner::showDialog ) ),gcnew DesignerVerb( "Show the Task List tool window using the IUIService",gcnew EventHandler( this, &IUIServiceTestDesigner::showToolWindow ) )};
         return gcnew DesignerVerbCollection( temp0 );
      }
   }

private:

   // Displays a message box with message text, caption text
   // and buttons of a particular MessageBoxButtons style.
   void showTestMessage( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      IUIService^ UIservice = dynamic_cast<IUIService^>(this->GetService( System::Windows::Forms::Design::IUIService::typeid ));
      if ( UIservice != nullptr )
            UIservice->ShowMessage( "Test message", "Test caption", System::Windows::Forms::MessageBoxButtons::AbortRetryIgnore );
   }


   // Displays an error message box that displays the message
   // contained within a specified exception.
   void showErrorMessage( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      IUIService^ UIservice = dynamic_cast<IUIService^>(this->GetService( System::Windows::Forms::Design::IUIService::typeid ));
      if ( UIservice != nullptr )
            UIservice->ShowError( gcnew Exception( "This is a message in a test exception, displayed by the IUIService",gcnew ArgumentException( "Test inner exception" ) ) );
   }

   // Displays an example Windows Form using the
   // IUIService::ShowDialog method.
   void showDialog( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      IUIService^ UIservice = dynamic_cast<IUIService^>(this->GetService( System::Windows::Forms::Design::IUIService::typeid ));
      if ( UIservice != nullptr )
            UIservice->ShowDialog( gcnew ExampleForm );
   }

   // Displays a standard tool window window using the
   // IUIService::ShowToolWindow method.
   void showToolWindow( Object^ /*sender*/, EventArgs^ /*e*/ )
   {
      IUIService^ UIservice = dynamic_cast<IUIService^>(this->GetService( System::Windows::Forms::Design::IUIService::typeid ));
      if ( UIservice != nullptr )
            UIservice->ShowToolWindow( StandardToolWindows::TaskList );
   }
};

// This control is associated with the IUIServiceTestDesigner,
// and can be sited in design mode to use the sample.

[DesignerAttribute(IUIServiceTestDesigner::typeid,IDesigner::typeid)]
ref class IUIServiceExampleControl: public UserControl
{
public:
   IUIServiceExampleControl()
   {
      this->BackColor = Color::Beige;
      this->Width = 255;
      this->Height = 60;
   }

protected:
   virtual void OnPaint( System::Windows::Forms::PaintEventArgs^ e ) override
   {
      if ( this->DesignMode )
      {
         e->Graphics->DrawString( "Right-click this control to display a list of the", gcnew System::Drawing::Font( "Arial",9 ), Brushes::Black, 5, 6 );
         e->Graphics->DrawString( "designer verb menu commands provided", gcnew System::Drawing::Font( "Arial",9 ), Brushes::Black, 5, 20 );
         e->Graphics->DrawString( "by the IUIServiceTestDesigner.", gcnew System::Drawing::Font( "Arial",9 ), Brushes::Black, 5, 34 );
      }
   }
};
using System;
using System.ComponentModel;
using System.ComponentModel.Design;
using System.Drawing;
using System.Windows.Forms;
using System.Windows.Forms.Design;

// This designer provides a set of designer verb shortcut menu commands
// that call methods of the IUIService.
public class IUIServiceTestDesigner : System.Windows.Forms.Design.ControlDesigner
{
    public IUIServiceTestDesigner()
    {
    }

    // Provides a set of designer verb menu commands that call 
    // IUIService methods.
    public override System.ComponentModel.Design.DesignerVerbCollection Verbs
    {
        get
        {
            return new DesignerVerbCollection( new DesignerVerb[] 
            {
                new DesignerVerb( 
                    "Show a test message box using the IUIService", 
                     new EventHandler(this.showTestMessage)),
                new DesignerVerb( 
                    "Show a test error message using the IUIService", 
                     new EventHandler(this.showErrorMessage)),
                new DesignerVerb( 
                    "Show an example Form using the IUIService", 
                     new EventHandler(this.showDialog)),
                new DesignerVerb( 
                     "Show the Task List tool window using the IUIService", 
                     new EventHandler(this.showToolWindow)) 
            });
        }
    }

    // Displays a message box with message text, caption text 
    // and buttons of a particular MessageBoxButtons style.
    private void showTestMessage(object sender, EventArgs e)
    {
        IUIService UIservice = (IUIService)this.GetService( 
            typeof( System.Windows.Forms.Design.IUIService ) );
        if( UIservice != null )            
            UIservice.ShowMessage("Test message", "Test caption", 
                System.Windows.Forms.MessageBoxButtons.AbortRetryIgnore);
    }

    // Displays an error message box that displays the message
    // contained in a specified exception.
    private void showErrorMessage(object sender, EventArgs e)
    {       
        IUIService UIservice = (IUIService)this.GetService( 
            typeof( System.Windows.Forms.Design.IUIService ) );
        if( UIservice != null )            
            UIservice.ShowError( new Exception(
                "This is a message in a test exception, " + 
                "displayed by the IUIService", 
                 new ArgumentException("Test inner exception")));
    }

    // Displays an example Windows Form using the 
    // IUIService.ShowDialog method.
    private void showDialog(object sender, EventArgs e)
    {
        IUIService UIservice = (IUIService)this.GetService( 
            typeof( System.Windows.Forms.Design.IUIService ) );
        if( UIservice != null )            
            UIservice.ShowDialog(new ExampleForm());
    }

    // Displays a standard tool window using the 
    // IUIService.ShowToolWindow method.
    private void showToolWindow(object sender, EventArgs e)
    {
        IUIService UIservice = (IUIService)this.GetService( 
            typeof( System.Windows.Forms.Design.IUIService ) );
        if( UIservice != null )            
            UIservice.ShowToolWindow(StandardToolWindows.TaskList);
    }
}

// Provides an example Form class used by the 
// IUIServiceTestDesigner.showDialog method.
internal class ExampleForm : System.Windows.Forms.Form
{
    public ExampleForm()
    {
        this.Text = "Example Form";
        System.Windows.Forms.Button okButton = new System.Windows.Forms.Button();
        okButton.Location = new Point(this.Width-70, this.Height-70);
        okButton.Size = new Size(50, 20);
        okButton.Anchor = AnchorStyles.Right | AnchorStyles.Bottom;
        okButton.DialogResult = DialogResult.OK;
        okButton.Text = "OK";
        this.Controls.Add( okButton );
    }
}

// This control is associated with the IUIServiceTestDesigner, 
// and can be sited in design mode to use the sample.
[DesignerAttribute(typeof(IUIServiceTestDesigner), typeof(IDesigner))]
public class IUIServiceExampleControl : UserControl
{
    public IUIServiceExampleControl()
    {
        this.BackColor = Color.Beige;
        this.Width = 255;
        this.Height = 60;
    }

    protected override void OnPaint(System.Windows.Forms.PaintEventArgs e)
    {
        if( this.DesignMode )
        {
            e.Graphics.DrawString(
                "Right-click this control to display a list of the", 
                 new Font("Arial", 9), Brushes.Black, 5, 6);
            e.Graphics.DrawString(
                "designer verb menu commands provided", 
                 new Font("Arial", 9), Brushes.Black, 5, 20);
            e.Graphics.DrawString( 
                "by the IUIServiceTestDesigner.", 
                 new Font("Arial", 9), Brushes.Black, 5, 34);
        }
    }
}
Imports System.ComponentModel
Imports System.ComponentModel.Design
Imports System.Drawing
Imports System.Windows.Forms
Imports System.Windows.Forms.Design

' This designer provides a set of designer verb shortcut menu commands
' that call methods of the IUIService.
Public Class IUIServiceTestDesigner
   Inherits System.Windows.Forms.Design.ControlDesigner
   
   Public Sub New()
    End Sub

    ' Provides a set of designer verb menu commands that call 
    ' IUIService methods.
    Public Overrides ReadOnly Property Verbs() As System.ComponentModel.Design.DesignerVerbCollection
        Get
            Return New DesignerVerbCollection(New DesignerVerb() { _
                New DesignerVerb("Show a test message box using the IUIService", _
                New EventHandler(AddressOf Me.showTestMessage)), _
                New DesignerVerb("Show a test error message using the IUIService", _
                New EventHandler(AddressOf Me.showErrorMessage)), _
                New DesignerVerb("Show an example Form using the IUIService", _
                New EventHandler(AddressOf Me.showDialog)), _
                New DesignerVerb("Show the Task List tool window using the IUIService", _
                New EventHandler(AddressOf Me.showToolWindow))})
        End Get
    End Property

    ' Displays a message box with message text, caption text 
    ' and buttons of a particular MessageBoxButtons style.
    Private Sub showTestMessage(ByVal sender As Object, ByVal e As EventArgs)
        Dim UIservice As IUIService = CType(Me.GetService( _
            GetType(System.Windows.Forms.Design.IUIService)), IUIService)
        If (UIservice IsNot Nothing) Then
            UIservice.ShowMessage("Test message", "Test caption", _
                System.Windows.Forms.MessageBoxButtons.AbortRetryIgnore)
        End If
    End Sub

    ' Displays an error message box that displays the message
    ' contained within a specified exception.
    Private Sub showErrorMessage(ByVal sender As Object, ByVal e As EventArgs)
        Dim UIservice As IUIService = CType(Me.GetService( _
            GetType(System.Windows.Forms.Design.IUIService)), IUIService)
        If (UIservice IsNot Nothing) Then
            UIservice.ShowError(New Exception( _
                "This is a message in a test exception, displayed by the IUIService", _
                New ArgumentException("Test inner exception")))
        End If
    End Sub

    ' Displays an example Windows Form using the 
    ' IUIService.ShowDialog method.
    Private Sub showDialog(ByVal sender As Object, ByVal e As EventArgs)
        Dim UIservice As IUIService = CType(Me.GetService( _
            GetType(System.Windows.Forms.Design.IUIService)), IUIService)
        If (UIservice IsNot Nothing) Then
            UIservice.ShowDialog(New ExampleForm())
        End If
    End Sub

    ' Displays a standard tool window using the 
    ' IUIService.ShowToolWindow method.
    Private Sub showToolWindow(ByVal sender As Object, ByVal e As EventArgs)
        Dim UIservice As IUIService = CType(Me.GetService( _
            GetType(System.Windows.Forms.Design.IUIService)), IUIService)
        If (UIservice IsNot Nothing) Then
            UIservice.ShowToolWindow(StandardToolWindows.TaskList)
        End If
    End Sub

End Class

' Provides an example Form class used by the 
' IUIServiceTestDesigner.showDialog method.
Friend Class ExampleForm
    Inherits System.Windows.Forms.Form

    Public Sub New()
        Me.Text = "Example Form"
        Dim okButton As New System.Windows.Forms.Button()
        okButton.Location = New Point(Me.Width - 70, Me.Height - 70)
        okButton.Size = New Size(50, 20)
        okButton.Anchor = AnchorStyles.Right Or AnchorStyles.Bottom
        okButton.DialogResult = System.Windows.Forms.DialogResult.OK
        okButton.Text = "OK"
        Me.Controls.Add(okButton)
    End Sub
End Class

' This control is associated with the IUIServiceTestDesigner, 
' and can be sited in design mode to use the sample.
<DesignerAttribute(GetType(IUIServiceTestDesigner), GetType(IDesigner))> _
Public Class IUIServiceExampleControl
    Inherits UserControl

    Public Sub New()
        Me.BackColor = Color.Beige
        Me.Width = 255
        Me.Height = 60
    End Sub

    Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
        If Me.DesignMode Then
            e.Graphics.DrawString("Right-click this control to display a list of the", _
                New Font("Arial", 9), Brushes.Black, 5, 6)
            e.Graphics.DrawString("designer verb menu commands provided", _
                New Font("Arial", 9), Brushes.Black, 5, 20)
            e.Graphics.DrawString("by the IUIServiceTestDesigner.", _
                New Font("Arial", 9), Brushes.Black, 5, 34)
        End If
    End Sub
End Class

注釈

IUIServiceでは、[ Styles辞書] プロパティを使用して、エラーメッセージの表示、ダイアログボックスの表示、およびホストのアンビエントプロパティの取得を行うことができます。IUIService can display error messages, show dialog boxes, and get ambient properties of the host, such as the font for dialog boxes and color schemes, through the Styles dictionary property.

プロパティ

Styles Styles Styles Styles

ホストの環境に固有なスタイルのコレクションを取得します。Gets the collection of styles that are specific to the host's environment.

メソッド

CanShowComponentEditor(Object) CanShowComponentEditor(Object) CanShowComponentEditor(Object) CanShowComponentEditor(Object)

コンポーネントが ComponentEditorForm を表示できるかどうかを示します。Indicates whether the component can display a ComponentEditorForm.

GetDialogOwnerWindow() GetDialogOwnerWindow() GetDialogOwnerWindow() GetDialogOwnerWindow()

ダイアログ ボックスを表示するときに所有者として使用するウィンドウを取得します。Gets the window that should be used as the owner when showing dialog boxes.

SetUIDirty() SetUIDirty() SetUIDirty() SetUIDirty()

UI が変更されたことを示すフラグを設定します。Sets a flag indicating the UI has changed.

ShowComponentEditor(Object, IWin32Window) ShowComponentEditor(Object, IWin32Window) ShowComponentEditor(Object, IWin32Window) ShowComponentEditor(Object, IWin32Window)

コンポーネントの ComponentEditorForm を表示しようとします。Attempts to display a ComponentEditorForm for a component.

ShowDialog(Form) ShowDialog(Form) ShowDialog(Form) ShowDialog(Form)

指定したフォームをダイアログ ボックスに表示しようとします。Attempts to display the specified form in a dialog box.

ShowError(Exception) ShowError(Exception) ShowError(Exception) ShowError(Exception)

指定した例外および例外に関する情報をメッセージ ボックスに表示します。Displays the specified exception and information about the exception in a message box.

ShowError(String) ShowError(String) ShowError(String) ShowError(String)

指定したエラー メッセージをメッセージ ボックスに表示します。Displays the specified error message in a message box.

ShowError(Exception, String) ShowError(Exception, String) ShowError(Exception, String) ShowError(Exception, String)

指定した例外および例外に関する情報をメッセージ ボックスに表示します。Displays the specified exception and information about the exception in a message box.

ShowMessage(String) ShowMessage(String) ShowMessage(String) ShowMessage(String)

指定したメッセージをメッセージ ボックスに表示します。Displays the specified message in a message box.

ShowMessage(String, String) ShowMessage(String, String) ShowMessage(String, String) ShowMessage(String, String)

キャプションを指定して、指定したメッセージをメッセージ ボックスに表示します。Displays the specified message in a message box with the specified caption.

ShowMessage(String, String, MessageBoxButtons) ShowMessage(String, String, MessageBoxButtons) ShowMessage(String, String, MessageBoxButtons) ShowMessage(String, String, MessageBoxButtons)

キャプションおよびダイアログ ボックスに配置するボタンを指定して、指定したメッセージをメッセージ ボックスに表示します。Displays the specified message in a message box with the specified caption and buttons to place on the dialog box.

ShowToolWindow(Guid) ShowToolWindow(Guid) ShowToolWindow(Guid) ShowToolWindow(Guid)

指定したツール ウィンドウを表示します。Displays the specified tool window.

適用対象