次の方法で共有


CurrencyManager.SuspendBinding メソッド

定義

データ バインディングに伴う変更によるバインド データ ソースの更新を中断します。

public:
 override void SuspendBinding();
public override void SuspendBinding ();
override this.SuspendBinding : unit -> unit
Public Overrides Sub SuspendBinding ()

次のコード例は、SuspendBinding メソッドの使用方法を示します。

void button3_Click( Object^ /*sender*/, EventArgs^ /*e*/ )
{
   try
   {
      BindingManagerBase^ myBindingManager1 = BindingContext[ myDataSet, "Customers" ];
      myBindingManager1->SuspendBinding();
   }
   catch ( Exception^ ex ) 
   {
      MessageBox::Show( ex->Source );
      MessageBox::Show( ex->Message );
   }
}
private void button3_Click(object sender, EventArgs e)
{
   try
   {
      BindingManagerBase myBindingManager1=BindingContext [myDataSet, "Customers"];
      myBindingManager1.SuspendBinding();
   }
   catch(Exception ex)
   {
      MessageBox.Show(ex.Source);
      MessageBox.Show(ex.Message);
   }
}
Private Sub button3_Click(sender As Object, e As EventArgs)
   Try
      Dim myBindingManager1 As BindingManagerBase = BindingContext(myDataSet, "Customers")
      myBindingManager1.SuspendBinding()
   Catch ex As Exception
      MessageBox.Show(ex.Source.ToString())
      MessageBox.Show(ex.Message.ToString())
   End Try
End Sub

注釈

SuspendBindingメソッドと ResumeBinding メソッドを使用すると、単純なバインディング シナリオでデータ バインディングの一時的な中断と再開が可能になります。 通常、ユーザーが検証を行う前にデータ フィールドに対して複数の編集を行う必要がある場合は、データ バインディングを中断します。 たとえば、1 つのフィールドを 2 番目のフィールドに従って変更する必要があるが、最初のフィールドを検証すると、2 番目のフィールドがエラーになる場合です。

Note

SuspendBinding は、 が呼び出されるまで ResumeBinding データ ソースに変更が適用されないようにしますが、実際にはイベントが発生するのを防ぐことはありません。 コントロールなどの複雑なデータ バインディングを使用するコントロールは DataGridView 、イベントなどの変更イベントに基づいて値を ListChanged 更新します。 したがって、 を呼び出すと SuspendBinding 、複雑なバインドされたコントロールがデータ ソースを更新するためのイベントを受信できなくなります。 このため、 と ResumeBinding は、 SuspendBinding コントロールなどのTextBox単純バインド コントロールで使用するように設計されています。 または、 プロパティを に設定してイベントを抑制ListChangedする場合は、複雑なバインディング シナリオでこれらのメソッドをRaiseListChangedEventsfalse使用できます。

適用対象

こちらもご覧ください