BindingSource.ResetBindings メソッド
アセンブリ: System.Windows.Forms (system.windows.forms.dll 内)
構文
Dim instance As BindingSource Dim metadataChanged As Boolean instance.ResetBindings(metadataChanged)
ResetBindings メソッドは、BindingSource にバインドされたすべてのコントロールに対し、値を更新するよう通知します。これは、ListChanged イベントを 1 回以上発生させることによって行われます。metaDataChanged パラメータは、基底の変更の性質を示します。
-
metaDataChanged の値が true の場合、BindingSource のデータ スキーマが変更されたことを示します。ListChangedEventArgs.ListChangedType が ListChangedType.PropertyDescriptorChanged に設定された ListChanged イベントが発生します。
metaDataChanged の値に関係なく、ListChangedEventArgs.ListChangedType が ListChangedType.Reset に設定された ListChanged イベントが発生します。したがって、パラメータを true に設定した ResetBindings を呼び出すと、2 つの ListChanged イベントが発生します。
ResetBindings は、他のメンバがデータ バインディングに対して大幅な変更を加えたときに、自動的に呼び出されます。たとえば、DataSource プロパティや DataMember プロパティが設定された場合などです。ただし、プログラム上でこのメソッドを明示的に呼び出すこともできます。
BindingSource コンポーネントを使用して、配列リストをバインドするコード例を次に示します。この操作では、変更が通知されません。次に、リストから項目を削除し、ResetBindings メソッドを呼び出すことによってバインド コントロールに変更を通知します。このコード例は「方法 : BindingSource を使用して Windows フォーム コントロール内にデータ ソースの更新を反映させる」の例の一部です。
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) _ Handles button1.Click ' If items remain in the list, remove the first item. If states.Count > 0 Then states.RemoveAt(0) ' Call ResetBindings to update the textboxes. bindingSource1.ResetBindings(False) End If End Sub 'button1_Click
private void button1_Click(object sender, EventArgs e) { // If items remain in the list, remove the first item. if (states.Count > 0) { states.RemoveAt(0); // Call ResetBindings to update the textboxes. bindingSource1.ResetBindings(false); } }
private: void button1_Click( Object^ /*sender*/, EventArgs^ /*e*/ ) { String^ xml = "<US><states>" + "<state><name>Washington</name><capital>Olympia</capital> " + "<flower>Coast Rhododendron</flower></state>" + "<state><name>Oregon</name><capital>Salem</capital>" + "<flower>Oregon Grape</flower></state>" + "<state><name>California</name><capital>Sacramento</capital>" + "<flower>California Poppy</flower></state>" + "<state><name>Nevada</name><capital>Carson City</capital>" + "<flower>Sagebrush</flower></state>" + "</states></US>"; // Convert the xml string to bytes and load into a memory stream. array<Byte>^ xmlBytes = Encoding::UTF8->GetBytes( xml ); MemoryStream^ stream = gcnew MemoryStream( xmlBytes,false ); // Create a DataSet and load the xml into it. dataSet2->ReadXml( stream ); // Set the data source. bindingSource1->DataSource = dataSet2; bindingSource1->ResetBindings( true ); }
Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition
開発プラットフォームの中には、.NET Framework によってサポートされていないバージョンがあります。サポートされているバージョンについては、「システム要件」を参照してください。
参照
- BindingSource.ResetBindings メソッドのページへのリンク