This documentation is archived and is not being maintained.

BindingManagerBase.Current Property

When overridden in a derived class, gets the current object.

[Visual Basic]
Public MustOverride ReadOnly Property Current As Object
[C#]
public abstract object Current {get;}
[C++]
public: __property virtual Object* get_Current() = 0;
[JScript]
public abstract function get Current() : Object;

Property Value

An Object that represents the current object.

Remarks

The Current object contains the value of the current item in the data source. To use the value of the current item, you must cast the item to the Type of the object contained by the DataSource. For example, a DataTable contains DataRowView objects. To determine the type of the current object, use the GetType and ToString methods.

Note   When the DataSource is a DataSet, DataViewManager, or DataTable, you are actually binding to a DataView. Consequently, each Current object is a DataRowView object.

Example

[Visual Basic, C#, C++] The following example prints the value of the Current object in a BindingManagerBase in the CurrentChanged event. The example assumes the data source is a DataTable containing a DataColumn named "CustName".

[Visual Basic] 
Private Sub Current_Changed(sender As Object, e As EventArgs)
    Dim bm As BindingManagerBase = CType(sender, BindingManagerBase)
    ' Check the type of the Current object. If it is not a
    ' DataRowView, exit the method. 
    If Not bm.Current.GetType() Is GetType(DataRowView) Then
        Return
    End If 
    ' Otherwise, print the value of the column named "CustName".
    Dim drv As DataRowView = CType(bm.Current, DataRowView)
    Console.Write("CurrentChanged): ")
    Console.Write(drv("CustName"))
    Console.WriteLine()
End Sub 'Current_Changed

[C#] 
private void Current_Changed(object sender, EventArgs e)
{
    BindingManagerBase bm = (BindingManagerBase) sender;
    /* Check the type of the Current object. If it is not a 
    DataRowView, exit the method. */
    if(bm.Current.GetType() != typeof(DataRowView)) return;

    // Otherwise, print the value of the column named "CustName".
    DataRowView drv = (DataRowView) bm.Current;
    Console.Write("CurrentChanged): ");
    Console.Write(drv["CustName"]);
    Console.WriteLine();
}

[C++] 
private:
    void Current_Changed(Object* sender, EventArgs* /*e*/)
    {
        BindingManagerBase* bm = dynamic_cast<BindingManagerBase*> (sender);
        /* Check the type of the Current object. If it is not a 
        DataRowView, exit the method. */
        if(bm->Current->GetType() != __typeof(DataRowView)) return;

        // Otherwise, print the value of the column named "CustName".
        DataRowView* drv = dynamic_cast<DataRowView*> (bm->Current);
        Console::Write(S"CurrentChanged): ");
        Console::Write(drv->Item[S"CustName"]);
        Console::WriteLine();
    }

[JScript] No example is available for JScript. To view a Visual Basic, C#, or C++ example, click the Language Filter button Language Filter in the upper-left corner of the page.

Requirements

Platforms: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 family, .NET Compact Framework

See Also

BindingManagerBase Class | BindingManagerBase Members | System.Windows.Forms Namespace

Show: