Freigeben über


CurrencyManager-Klasse

Verwaltet eine Liste von Binding-Objekten.

Namespace: System.Windows.Forms
Assembly: System.Windows.Forms (in system.windows.forms.dll)

Syntax

'Declaration
Public Class CurrencyManager
    Inherits BindingManagerBase
'Usage
Dim instance As CurrencyManager
public class CurrencyManager : BindingManagerBase
public ref class CurrencyManager : public BindingManagerBase
public class CurrencyManager extends BindingManagerBase
public class CurrencyManager extends BindingManagerBase

Hinweise

Der CurrencyManager wird von der BindingManagerBase-Klasse abgeleitet. Geben Sie mithilfe von BindingContext einen CurrencyManager oder einen PropertyManager zurück. Das tatsächlich zurückgegebene Objekt hängt von der Datenquelle und dem Datenmember ab, die an die Item-Eigenschaft des BindingContext übergeben werden. Wenn die Datenquelle ein Objekt ist, das keine Objektliste, sondern nur eine einzelne Eigenschaft zurückgeben kann, ist der Typ ein PropertyManager. Wenn Sie z. B. TextBox als Datenquelle angeben, wird PropertyManager zurückgegeben. Wenn die Datenquelle aber ein Objekt ist, das die Schnittstelle IList, IListSource oder IBindingList implementiert, wird ein CurrencyManager zurückgegeben.

Die Current-Eigenschaft gibt das aktuelle Element der zugrunde liegenden Liste zurück. Legen Sie die Position-Eigenschaft auf einen neuen Wert fest, um das aktuelle Element zu ändern. Der Wert muss größer als 0 (null) und kleiner als der Wert der Count-Eigenschaft sein.

Wenn die zugrunde liegende Datenquelle die IBindingList-Schnittstelle implementiert und die AllowNew-Eigenschaft auf true festgelegt ist, können Sie die AddNew-Methode verwenden.

Beispiel

Im folgenden Codebeispiel wird ein TextBox-Steuerelement an eine Spalte in einer DataTable gebunden, der CurrencyManager für die Bindung wird abgerufen, und seine Position wird festgelegt.

' Place the next line into the Declarations section of the form.
 Private myCurrencyManager As CurrencyManager
 
 Private Sub BindControl(myTable As DataTable)
    ' Bind a TextBox control to a DataTable column in a DataSet.
    TextBox1.DataBindings.Add("Text", myTable, "CompanyName")
    ' Specify the CurrencyManager for the DataTable.
    myCurrencyManager = CType(me.BindingContext(myTable), CurrencyManager)
    ' Set the initial Position of the control.
    myCurrencyManager.Position = 0
 End Sub
 
 Private Sub MoveNext(myCurrencyManager As CurrencyManager)
    If myCurrencyManager.Position = myCurrencyManager.Count - 1 Then 
       MessageBox.Show("You're at end of the records")
    Else
       myCurrencyManager.Position += 1
    End If
 End Sub
 
 Private Sub MoveFirst(myCurrencyManager As CurrencyManager)
    myCurrencyManager.Position = 0
 End Sub
 
 Private Sub MovePrevious(myCurrencyManager As CurrencyManager)
    If myCurrencyManager.Position = 0 Then
       MessageBox.Show("You're at the beginning of the records.")
    Else
       myCurrencyManager.Position -= 1
    End if
 End Sub
 
 Private Sub MoveLast(myCurrencyManager As CurrencyManager)
    myCurrencyManager.Position = myCurrencyManager.Count - 1
 End Sub
private CurrencyManager myCurrencyManager;
 
 private void BindControl(DataTable myTable){
    // Bind a TextBox control to a DataTable column in a DataSet.
    textBox1.DataBindings.Add("Text", myTable, "CompanyName");
    // Specify the CurrencyManager for the DataTable.
    myCurrencyManager = (CurrencyManager)this.BindingContext[myTable];
    // Set the initial Position of the control.
    myCurrencyManager.Position = 0;
 }
 
 private void MoveNext(CurrencyManager myCurrencyManager){
    if (myCurrencyManager.Position == myCurrencyManager.Count - 1){
       MessageBox.Show("You're at end of the records");
    }
    else{
      myCurrencyManager.Position += 1;
    }
 }
 
 private void MoveFirst(CurrencyManager myCurrencyManager){
    myCurrencyManager.Position = 0;
 }
 
 private void MovePrevious(CurrencyManager myCurrencyManager ){
    if(myCurrencyManager.Position == 0) {
       MessageBox.Show("You're at the beginning of the records.");
    }   
    else{
       myCurrencyManager.Position -= 1;
    }
 }
 
 private void MoveLast(CurrencyManager myCurrencyManager){
    myCurrencyManager.Position = myCurrencyManager.Count - 1;
 }
CurrencyManager^ myCurrencyManager;
void BindControl( DataTable^ myTable )
{
   
   // Bind a TextBox control to a DataTable column in a DataSet.
   textBox1->DataBindings->Add( "Text", myTable, "CompanyName" );
   
   // Specify the CurrencyManager for the DataTable.
   this->myCurrencyManager = dynamic_cast<CurrencyManager^>(this->BindingContext[ myTable ]);
   
   // Set the initial Position of the control.
   this->myCurrencyManager->Position = 0;
}

void MoveNext( CurrencyManager^ myCurrencyManager )
{
   if ( myCurrencyManager->Position == myCurrencyManager->Count - 1 )
   {
      MessageBox::Show( "You're at end of the records" );
   }
   else
   {
      myCurrencyManager->Position += 1;
   }
}

void MoveFirst( CurrencyManager^ myCurrencyManager )
{
   myCurrencyManager->Position = 0;
}

void MovePrevious( CurrencyManager^ myCurrencyManager )
{
   if ( myCurrencyManager->Position == 0 )
   {
      MessageBox::Show( "You're at the beginning of the records." );
   }
   else
   {
      myCurrencyManager->Position -= 1;
   }
}

void MoveLast( CurrencyManager^ myCurrencyManager )
{
   myCurrencyManager->Position = myCurrencyManager->Count - 1;
}
private var myCurrencyManager : CurrencyManager;

private function BindControl(myTable : DataTable){
   // Bind a TextBox control to a DataTable column in a DataSet.
   textBox1.DataBindings.Add("Text", myTable, "CompanyName");
   // Specify the CurrencyManager for the DataTable.
   myCurrencyManager = CurrencyManager(this.BindingContext[myTable]);
   // Set the initial Position of the control.
   myCurrencyManager.Position = 0;
}

private function MoveNext(myCurrencyManager : CurrencyManager){
   if (myCurrencyManager.Position == myCurrencyManager.Count - 1){
      MessageBox.Show("You're at end of the records");
   }
   else{
     myCurrencyManager.Position += 1;
   }
}

private function MoveFirst(myCurrencyManager : CurrencyManager){
   myCurrencyManager.Position = 0;
}

private function MovePrevious(myCurrencyManager : CurrencyManager){
   if(myCurrencyManager.Position == 0) {
      MessageBox.Show("You're at the beginning of the records.");
   }   
   else{
      myCurrencyManager.Position -= 1;
   }
}

private function MoveLast(myCurrencyManager : CurrencyManager){
   myCurrencyManager.Position = myCurrencyManager.Count - 1;
}

Vererbungshierarchie

System.Object
   System.Windows.Forms.BindingManagerBase
    System.Windows.Forms.CurrencyManager

Threadsicherheit

Alle öffentlichen statischen (Shared in Visual Basic) Member dieses Typs sind threadsicher. Bei Instanzmembern ist die Threadsicherheit nicht gewährleistet.

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

CurrencyManager-Member
System.Windows.Forms-Namespace
BindingsCollection-Klasse
BindingContext-Klasse
Binding-Klasse