다음을 통해 공유


BindingSource.MoveFirst 메서드

정의

목록의 첫 번째 항목으로 이동합니다.

public:
 void MoveFirst();
public void MoveFirst ();
member this.MoveFirst : unit -> unit
Public Sub MoveFirst ()

예제

다음 코드 예제는 MoveNext, MoveFirstCurrent, 및 Position 멤버입니다. 이 예제를 실행 하려면 코드를 가져오는 폼에 붙여 넣습니다 합니다 System.Drawing.Drawing2D 네임 스페이스 포함를 BindingSource 라는 BindingSource1 이라는 단추가 button1합니다. 연결 합니다 Form1_LoadForm1_Paint 메서드를를 LoadPaint 양식과 연결에 대 한 이벤트를 button1_click 메서드는 Click 이벤트에 대 한 button1합니다. Visual Basic 사용자는 System.Data.dll에 대 한 참조를 추가 해야 합니다.

    void Form1_Load(Object^ sender, EventArgs^ e)
    {
        // Set the data source to the Brush type and populate
        // bindingSource1; with some brushes.
        bindingSource1->DataSource = System::Drawing::Brush::typeid;
        bindingSource1->Add(
            gcnew TextureBrush(gcnew Bitmap(Button::typeid, "Button.bmp")));
        bindingSource1->Add(gcnew HatchBrush(HatchStyle::Cross, Color::Red));
        bindingSource1->Add(gcnew SolidBrush(Color::Blue));
    }


private:
    void moveNextButton_Click(Object^ sender, EventArgs^ e)
    {
        // If you are not at the end of the list, move to the next item
        // in the BindingSource.
        if (bindingSource1->Position + 1 < bindingSource1->Count)
        {
            bindingSource1->MoveNext();
        }
        // Otherwise, move back to the first item.
        else
        {
            bindingSource1->MoveFirst();
        }
        // Force the form to repaint.
        this->Invalidate();
    }

    void Form1_Paint(Object^ sender, PaintEventArgs^ e)
    {
        // Get the current item in the BindingSource.
        Brush^ item = (Brush^) bindingSource1->Current;

        // If the current type is a TextureBrush, fill an ellipse.
        if (item->GetType() == TextureBrush::typeid)
        {
            e->Graphics->FillEllipse(item,e->ClipRectangle);
        }
        // If the current type is a HatchBrush, fill a triangle.
        else if (item->GetType() == HatchBrush::typeid)
        {

            e->Graphics->FillPolygon(item, 
                gcnew array<Point> {*gcnew Point(0, 0),
                *gcnew Point(0, 200),
                *gcnew Point(200, 0)});
        }
        // Otherwise, fill a rectangle.
        else
        {
            e->Graphics->FillRectangle(
                (Brush^)bindingSource1->Current, e->ClipRectangle);
        }
    }
void Form1_Load(object sender, EventArgs e)
{
    // Set the data source to the Brush type and populate
    // BindingSource1 with some brushes.
    BindingSource1.DataSource = typeof(System.Drawing.Brush);
    BindingSource1.Add(
        new TextureBrush(new Bitmap(typeof(Button), "Button.bmp")));
    BindingSource1.Add(new HatchBrush(HatchStyle.Cross, Color.Red));
    BindingSource1.Add(new SolidBrush(Color.Blue));
}

private void button1_Click(object sender, EventArgs e)
{
    // If you are not at the end of the list, move to the next item
    // in the BindingSource.
    if (BindingSource1.Position + 1 < BindingSource1.Count)
        BindingSource1.MoveNext();

    // Otherwise, move back to the first item.
    else
        BindingSource1.MoveFirst();

    // Force the form to repaint.
    this.Invalidate();
}

void Form1_Paint(object sender, PaintEventArgs e)
{
    // Get the current item in the BindingSource.
    Brush item = (Brush)BindingSource1.Current;

    // If the current type is a TextureBrush, fill an ellipse.
    if (item.GetType() == typeof(TextureBrush))
        e.Graphics.FillEllipse(item,
           e.ClipRectangle);

    // If the current type is a HatchBrush, fill a triangle.
    else if (item.GetType() == typeof(HatchBrush))
        e.Graphics.FillPolygon(item,
            new Point[] { new Point(0, 0), new Point(0, 200),
            new Point(200, 0)});

    // Otherwise, fill a rectangle.
    else
        e.Graphics.FillRectangle(
            (Brush)BindingSource1.Current, e.ClipRectangle);
}
Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs) _
    Handles Me.Load

    ' Set the data source to the Brush type and populate
    ' BindingSource1 with some brushes.
    BindingSource1.DataSource = GetType(System.Drawing.Brush)
    BindingSource1.Add(New TextureBrush(New Bitmap(GetType(Button), _
        "Button.bmp")))
    BindingSource1.Add(New HatchBrush(HatchStyle.Cross, Color.Red))
    BindingSource1.Add(New SolidBrush(Color.Blue))

End Sub



Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs) _
     Handles button1.Click

    ' If you are not at the end of the list, move to the next item
    ' in the BindingSource.
    If BindingSource1.Position + 1 < BindingSource1.Count Then
        BindingSource1.MoveNext()

        ' Otherwise, move back to the first item.
    Else
        BindingSource1.MoveFirst()
    End If

    ' Force the form to repaint.
    Me.Invalidate()

End Sub


Sub Form1_Paint(ByVal sender As Object, ByVal e As PaintEventArgs)

    ' Get the current item in the BindingSource.
    Dim item As Brush = CType(BindingSource1.Current, Brush)

    ' If the current type is a TextureBrush, fill an ellipse.
    If item.GetType().Equals(GetType(TextureBrush)) Then
        e.Graphics.FillEllipse(item, _
        e.ClipRectangle)

        ' If the current type is a HatchBrush, fill a triangle.
    ElseIf item.GetType().Equals(GetType(HatchBrush)) Then
        e.Graphics.FillPolygon(item, New Point() _
         {New Point(0, 0), New Point(0, 200), New Point(200, 0)})

        ' Otherwise, fill a rectangle.
    Else
        e.Graphics.FillRectangle(item, e.ClipRectangle)
    End If

End Sub

설명

현재 값을 변경 합니다 Position 속성을 0으로, 데이터 원본에 있는 첫 번째 항목입니다.

적용 대상

추가 정보