BindingCompleteEventArgs BindingCompleteEventArgs BindingCompleteEventArgs BindingCompleteEventArgs Class

定義

BindingComplete イベントのデータを提供します。Provides data for the BindingComplete event.

public ref class BindingCompleteEventArgs : System::ComponentModel::CancelEventArgs
public class BindingCompleteEventArgs : System.ComponentModel.CancelEventArgs
type BindingCompleteEventArgs = class
    inherit CancelEventArgs
Public Class BindingCompleteEventArgs
Inherits CancelEventArgs
継承
BindingCompleteEventArgsBindingCompleteEventArgsBindingCompleteEventArgsBindingCompleteEventArgs

次のコード例は、処理を示しています、BindingCompleteイベント。The following code example demonstrates handling the BindingComplete event. このコードを実行するには、空のコード ファイルに貼り付けます。To run this code, paste it into an empty code file.

// Represents a business object that throws exceptions when 
// invalid values are entered for some of its properties.
public ref class Part
{
private:
    String^ name;
    int number;
    double price;

public:
    Part(String^ name, int number, double price)
    {
        PartName = name;
        PartNumber = number;
        PartPrice = price;
    }

    property String^ PartName 
    {
        String^ get()
        {
            return name;
        }

        void set(String^ value)
        {
            if (value->Length <= 0)
            {
                throw gcnew Exception(
                    "Each part must have a name.");
            }
            else
            {
                name = value;
            }
        }
    }

    property double PartPrice 
    {
        double get()
        {
            return price;
        }

        void set(double value)
        {
            price = value;
        }
    }

    property int PartNumber 
    {
        int get()
        {
            return number;
        }

        void set(int value)
        {
            if (value < 100)
            {
                throw gcnew Exception(
                    "Invalid part number." \
                    "Part numbers must be " \
                    "greater than 100.");
            }
            else
            {
                number = value;
            }
        }
    }

};

ref class MainForm: public Form
{
private:
    BindingSource^ bindingSource;
    TextBox^ partNameTextBox;
    TextBox^ partNumberTextBox;
    TextBox^ partPriceTextBox;

public:
    MainForm()
    {
        bindingSource = gcnew BindingSource;
        partNameTextBox = gcnew TextBox;
        partNumberTextBox = gcnew TextBox;
        partPriceTextBox = gcnew TextBox;
            
        //Set up the textbox controls.
        this->partNameTextBox->Location = Point(82, 13);
        this->partNameTextBox->TabIndex = 1;
        this->partNumberTextBox->Location = Point(81, 47);
        this->partNumberTextBox->TabIndex = 2;
        this->partPriceTextBox->Location = Point(81, 83);
        this->partPriceTextBox->TabIndex = 3;
        
        // Add the textbox controls to the form
        this->Controls->Add(this->partNumberTextBox);
        this->Controls->Add(this->partNameTextBox);
        this->Controls->Add(this->partPriceTextBox);
        
        // Handle the form's Load event.
        this->Load += gcnew EventHandler(this, 
            &MainForm::OnMainFormLoad);
    }

private:

    void OnMainFormLoad(Object^ sender, EventArgs^ e)
    {   
        // Set the DataSource of bindingSource to the Part type.
        bindingSource->DataSource = Part::typeid;
        
        // Bind the textboxes to the properties of the Part type,
        // enabling formatting.
        partNameTextBox->DataBindings->Add(
            "Text", bindingSource, "PartName", true);
        partNumberTextBox->DataBindings->Add(
            "Text", bindingSource, "PartNumber", true);
        
        //Bind the textbox to the PartPrice value 
        // with currency formatting.
        partPriceTextBox->DataBindings->Add("Text", bindingSource, "PartPrice", true,
           DataSourceUpdateMode::OnPropertyChanged, nullptr, "C");

        // Handle the BindingComplete event for bindingSource and
        // the partNameBinding.
        bindingSource->BindingComplete += 
            gcnew BindingCompleteEventHandler(this, 
            &MainForm::OnBindingSourceBindingComplete);
        bindingSource->BindingComplete += 
            gcnew BindingCompleteEventHandler(this, 
            &MainForm::OnPartNameBindingBindingComplete);
        
        // Add a new part to bindingSource.
        bindingSource->Add(gcnew Part("Widget", 1234, 12.45));
    }

    // Handle the BindingComplete event to catch errors and 
    // exceptions in binding process.
    void OnBindingSourceBindingComplete(Object^ sender, 
        BindingCompleteEventArgs^ e)
    {
        if (e->BindingCompleteState == 
            BindingCompleteState::Exception)
        {
            MessageBox::Show(String::Format(
                CultureInfo::CurrentCulture,
                "bindingSource: {0}", e->Exception->Message));
        }

        if (e->BindingCompleteState == 
            BindingCompleteState::DataError)
        {
            MessageBox::Show(String::Format(
                CultureInfo::CurrentCulture,
                "bindingSource: {0}", e->Exception->Message));
        }
    }

    // Handle the BindingComplete event to catch errors and 
    // exceptions in binding process.
    void OnPartNameBindingBindingComplete(Object^ sender, 
        BindingCompleteEventArgs^ e)
    {
        if (e->BindingCompleteState == 
            BindingCompleteState::Exception)
        {
            MessageBox::Show(String::Format(
                CultureInfo::CurrentCulture,
                "PartNameBinding: {0}", e->Exception->Message));
        }

        if (e->BindingCompleteState == 
            BindingCompleteState::DataError)
        {
            MessageBox::Show(String::Format(
                CultureInfo::CurrentCulture,
                "PartNameBinding: {0}", e->Exception->Message));
        }
    }
};

using System;
using System.Drawing;
using System.Windows.Forms;

class Form1 : Form
{
	private BindingSource BindingSource1 = new BindingSource();
	private TextBox textBox1 = new TextBox();
	private TextBox textBox2 = new TextBox();
	private TextBox textBox3 = new TextBox();

	public Form1()
	{
		//Set up the textbox controls.
		this.textBox1.Location = new System.Drawing.Point(82, 13);
		this.textBox1.TabIndex = 1;
		this.textBox2.Location = new System.Drawing.Point(81, 47);
		this.textBox2.TabIndex = 2;
		this.textBox3.Location = new System.Drawing.Point(81, 83);
		this.textBox3.TabIndex = 3;

		// Add the textbox controls to the form
		this.Controls.Add(this.textBox2);
		this.Controls.Add(this.textBox1);
		this.Controls.Add(this.textBox3);

		// Handle the form's Load event.
		this.Load += new System.EventHandler(this.Form1_Load);
	}
	Binding partNameBinding;
	Binding partNumberBinding;

	private void Form1_Load(object sender, EventArgs e)
	{
		// Set the DataSource of BindingSource1 to the Part type.
		BindingSource1.DataSource = typeof(Part);

		// Bind the textboxes to the properties of the Part type, 
		// enabling formatting.
		partNameBinding = textBox1.DataBindings.Add("Text",
			BindingSource1, "PartName", true);
		
		partNumberBinding = textBox2.DataBindings.Add("Text", BindingSource1, "PartNumber",
			true);

		//Bind the textbox to the PartPrice value with currency formatting.
		textBox3.DataBindings.Add("Text", BindingSource1, "PartPrice", true,
			DataSourceUpdateMode.OnPropertyChanged, 0, "C");
			

		// Handle the BindingComplete event for BindingSource1 and 
		// the partNameBinding.
		partNumberBinding.BindingComplete +=
			new BindingCompleteEventHandler(partNumberBinding_BindingComplete);
		partNameBinding.BindingComplete +=
			new BindingCompleteEventHandler(partNameBinding_BindingComplete);

		// Add a new part to BindingSource1.
		BindingSource1.Add(new Part("Widget", 1234, 12.45));
	}

	// Handle the BindingComplete event to catch errors and exceptions 
	// in binding process.
	void partNumberBinding_BindingComplete(object sender,
		BindingCompleteEventArgs e)
	{
		if (e.BindingCompleteState != BindingCompleteState.Success)
			MessageBox.Show("partNumberBinding: " + e.ErrorText);
	}		

	// Handle the BindingComplete event to catch errors and 
	// exceptions in binding process.
	void partNameBinding_BindingComplete(object sender,
		BindingCompleteEventArgs e)
	{
		if (e.BindingCompleteState != BindingCompleteState.Success)
			MessageBox.Show("partNameBinding: " + e.ErrorText);
	}

	[STAThread]
	static void Main()
	{
		Application.EnableVisualStyles();
		Application.Run(new Form1());
	}
}

// Represents a business object that throws exceptions when invalid values are
// entered for some of its properties.
public class Part
{
	private string name;
	private int number;
	private double price;

	public Part(string name, int number, double price)
	{
		PartName = name;
		PartNumber = number;
		PartPrice = price;
	}

	public string PartName
	{
		get { return name; }
		set
		{
			if (value.Length <= 0)
				throw new Exception("Each part must have a name.");
			else
				name = value;
		}
	}
	public double PartPrice
	{
		get { return price; }
		set { price = value; }
	}

	public int PartNumber
	{
		get { return number; }
		set
		{
			if (value < 100)
				throw new Exception("Invalid part number." +
					" Part numbers must be greater than 100.");
			else
				number = value;
		}
	}
}
Imports System
Imports System.Drawing
Imports System.Windows.Forms

Class Form1
    Inherits Form

    Private  BindingSource1 As New BindingSource()
    Private textBox1 As New TextBox()
    Private textBox2 As New TextBox()
    Private textBox3 As New TextBox()

    Public Sub New()

        'Set up the textbox controls.
        Me.textBox1.Location = New System.Drawing.Point(82, 13)
        Me.textBox1.TabIndex = 1
        Me.textBox2.Location = New System.Drawing.Point(81, 47)
        Me.textBox2.TabIndex = 2
        Me.textBox3.Location = New System.Drawing.Point(81, 83)
        Me.textBox3.TabIndex = 3

        ' Add the textbox controls to the form
        Me.Controls.Add(Me.textBox2)
        Me.Controls.Add(Me.textBox1)
        Me.Controls.Add(Me.textBox3)

    End Sub

    Private WithEvents partNameBinding As Binding
    Private WithEvents partNumberBinding As Binding

    Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
        Handles Me.Load

        ' Set the DataSource of BindingSource1 to the Part type.
        BindingSource1.DataSource = GetType(Part)

        ' Bind the textboxes to the properties of the Part type, 
        ' enabling formatting.
        partNameBinding = textBox1.DataBindings.Add("Text", BindingSource1, _
            "PartName", True)
        partNumberBinding = textBox2.DataBindings.Add("Text", BindingSource1, _
            "PartNumber", True)
        
        'Bind the textbox to the PartPrice value with currency formatting.
        textBox3.DataBindings.Add("Text", BindingSource1, "PartPrice", _
            True, DataSourceUpdateMode.OnPropertyChanged, 0, "C")

        ' Add a new part to BindingSource1.
        BindingSource1.Add(New Part("Widget", 1234, 12.45))
    End Sub

    ' Handle the BindingComplete event to catch errors and exceptions 
    ' in binding process.
    Sub partNumberBinding_BindingComplete(ByVal sender As Object, _
        ByVal e As BindingCompleteEventArgs) _
        Handles partNumberBinding.BindingComplete

        If Not e.BindingCompleteState = BindingCompleteState.Success Then
            MessageBox.Show("partNumberBinding: " + e.ErrorText)
        End If

    End Sub

    ' Handle the BindingComplete event to catch errors and exceptions 
    ' in binding process.
    Sub partNameBinding_BindingComplete(ByVal sender As Object, _
        ByVal e As BindingCompleteEventArgs) _
        Handles partNameBinding.BindingComplete

        If Not e.BindingCompleteState = BindingCompleteState.Success Then
            MessageBox.Show("partNameBinding: " + e.ErrorText)
        End If
       
    End Sub

    <STAThread()> _
    Shared Sub Main()
        Application.EnableVisualStyles()
        Application.Run(New Form1())
    End Sub

End Class

' Represents a business object that throws exceptions when invalid 
' values are entered for some of its properties.
Public Class Part
    Private name As String
    Private number As Integer
    Private price As Double

    Public Sub New(ByVal name As String, ByVal number As Integer, _
        ByVal price As Double)

        PartName = name
        PartNumber = number
        PartPrice = price
    End Sub


    Public Property PartName() As String
        Get
            Return name
        End Get
        Set(ByVal value As String)
            If Value.Length <= 0 Then
                Throw New Exception("Each part must have a name.")
            Else
                name = Value
            End If
        End Set
    End Property

    Public Property PartPrice() As Double
        Get
            Return price
        End Get
        Set(ByVal value As Double)
            price = Value
        End Set
    End Property

    Public Property PartNumber() As Integer
        Get
            Return number
        End Get
        Set(ByVal value As Integer)
            If Value < 100 Then
                Throw New Exception("Invalid part number." _
                    & " Part numbers must be greater than 100.")
            Else
                number = Value
            End If
        End Set
    End Property
End Class

注釈

BindingCompleteEventArgs例外やバインディング プロセス中に発生したエラーに関する情報が含まれています。The BindingCompleteEventArgs contains information regarding exceptions or errors that occurred during a binding process.

コンストラクター

BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext)

バインディング、エラー状態、およびバインディング コンテキストを指定して BindingCompleteEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the BindingCompleteEventArgs class with the specified binding, error state, and binding context.

BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String)

バインディング、エラー状態とエラー テキスト、およびバインディング コンテキストを指定して BindingCompleteEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the BindingCompleteEventArgs class with the specified binding, error state and text, and binding context.

BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception)

バインディング、エラー状態とエラー テキスト、バインディング コンテキスト、および例外を指定して BindingCompleteEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the BindingCompleteEventArgs class with the specified binding, error state and text, binding context, and exception.

BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception, Boolean) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception, Boolean) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception, Boolean) BindingCompleteEventArgs(Binding, BindingCompleteState, BindingCompleteContext, String, Exception, Boolean)

バインディング、エラー状態およびエラー テキスト、バインディング コンテキスト、例外、およびバインディングをキャンセルするかどうかを指定して、BindingCompleteEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the BindingCompleteEventArgs class with the specified binding, error state and text, binding context, exception, and whether the binding should be cancelled.

プロパティ

Binding Binding Binding Binding

この BindingComplete イベントに関連するバインディングを取得します。Gets the binding associated with this occurrence of a BindingComplete event.

BindingCompleteContext BindingCompleteContext BindingCompleteContext BindingCompleteContext

バインディング操作の方向を取得します。Gets the direction of the binding operation.

BindingCompleteState BindingCompleteState BindingCompleteState BindingCompleteState

バインディング操作の完了状態を取得します。Gets the completion state of the binding operation.

Cancel Cancel Cancel Cancel

イベントをキャンセルするかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the event should be canceled.

(Inherited from CancelEventArgs)
ErrorText ErrorText ErrorText ErrorText

バインディング操作時に発生したエラーを表すテキストを取得します。Gets the text description of the error that occurred during the binding operation.

Exception Exception Exception Exception

バインディング操作時に発生した例外を取得します。Gets the exception that occurred during the binding operation.

メソッド

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

指定したオブジェクトが、現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(Inherited from Object)
GetHashCode() GetHashCode() GetHashCode() GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(Inherited from Object)
GetType() GetType() GetType() GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(Inherited from Object)
MemberwiseClone() MemberwiseClone() MemberwiseClone() MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(Inherited from Object)
ToString() ToString() ToString() ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(Inherited from Object)

適用対象