SqlCeResultSet.ResultSetView Property

SqlCeResultSet을 컨트롤에 데이터 바인딩할 때 사용됩니다.

네임스페이스: System.Data.SqlServerCe
어셈블리: System.Data.SqlServerCe(system.data.sqlserverce.dll에 있음)

구문

‘선언
Public ReadOnly Property ResultSetView As ResultSetView
public ResultSetView ResultSetView { get; }
public:
property ResultSetView^ ResultSetView {
    ResultSetView^ get ();
}
/** @property */
public ResultSetView get_ResultSetView ()
public function get ResultSetView () : ResultSetView

속성 값

ResultSetView입니다.

다음 예제에서는 ResultSetView를 사용하여 SqlCeResultSet에 두 개의 텍스트 상자 컨트롤을 바인딩합니다.

Private conn As SqlCeConnection = Nothing
Private cmd As SqlCeCommand = Nothing
Private rs As SqlCeResultSet = Nothing
Private view As ResultSetView = Nothing

Private textBox1 As TextBox = Nothing
Private textBox2 As TextBox = Nothing


' NOTE: textBox instances are initialized in Form's 
' InitializeComponent() which has been omitted for the 
' brevity of this code snippet
'
Private Sub onForm_Load(ByVal sender As Object, ByVal e As System.EventArgs)
    Me.conn = New SqlCeConnection("Data Source = MyDatabase.sdf")
    Me.conn.Open()

    Me.cmd = conn.CreateCommand()
    Me.cmd.CommandText = "SELECT * FROM Orders WHERE [Order ID] < @orderID"
    Me.cmd.Parameters.Add("@orderID", SqlDbType.Int)

End Sub 'onForm_Load


Private Sub buttonBind_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Try
        ' Fill the command parameter
        '
        Me.cmd.Parameters("@orderID").Value = Me.textBox1.Text

        ' Close the previously data bound result set
        '
        If Not Nothing Is rs Then
            rs.Close()
        End If
        ' Create a new result set instance
        '
        rs = cmd.ExecuteResultSet(ResultSetOptions.Updatable Or ResultSetOptions.Scrollable)

        ' ResultSetView implements all data binding interfaces
        '
        Me.view = rs.ResultSetView

        ' Bind to text boxes; initially these will display the first row
        '
        Me.textBox1.DataBindings.Add("text", view, "Order ID")
        Me.textBox2.DataBindings.Add("text", view, "Ship Address")

        ' Note: 
        ' While UI controls are data-bound, the associated 
        ' SqlCeResultSet and SqlCeConnection instances must
        ' remain open; 
        '
    Catch ex As Exception
        MessageBox.Show(ex.Message)
    End Try

End Sub 'buttonBind_Click


' These event handlers are registered on the Next and Previous 
' buttons, which control which record is displayed in the data
' bound text boxes;
'
Private Sub btnNext_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Me.BindingContext(Me.view).Position += 1

End Sub 'btnNext_Click


Private Sub btnPrev_Click(ByVal sender As Object, ByVal e As System.EventArgs)
    Me.BindingContext(Me.view).Position -= 1

End Sub 'btnPrev_Click
SqlCeConnection conn = null;
SqlCeCommand    cmd = null;
SqlCeResultSet  rs = null;
ResultSetView   view = null;

TextBox         textBox1 = null;
TextBox         textBox2 = null;

// NOTE: textBox instances are initialized in Form's 
// InitializeComponent() which has been omitted for the 
// brevity of this code snippet
//
private void onForm_Load(object sender, System.EventArgs e)
{
    this.conn = new SqlCeConnection("Data Source = MyDatabase.sdf");
    this.conn.Open();

    this.cmd = conn.CreateCommand();
    this.cmd.CommandText = "SELECT * FROM Orders WHERE [Order ID] < @orderID";
    this.cmd.Parameters.Add("@orderID", SqlDbType.Int);
}

private void buttonBind_Click(object sender, System.EventArgs e)
{
    try
    {
        // Fill the command parameter
        //
        this.cmd.Parameters["@orderID"].Value = this.textBox1.Text;

        // Close the previously data bound result set
        //
        if (null != rs) rs.Close();

        // Create a new result set instance
        //
        rs = cmd.ExecuteResultSet(ResultSetOptions.Updatable | 
            ResultSetOptions.Scrollable);

        // ResultSetView implements all data binding interfaces
        //
        this.view = rs.ResultSetView;

        // Bind to text boxes; initially these will display the first row
        //
        this.textBox1.DataBindings.Add("text", view, "Order ID");
        this.textBox2.DataBindings.Add("text", view, "Ship Address");

        // Note: 
        // While UI controls are data-bound, the associated 
        // SqlCeResultSet and SqlCeConnection instances must
        // remain open; 
        //
    }
    catch (Exception ex)
    {
        MessageBox.Show(ex.Message);
    }
}

// These event handlers are registered on the Next and Previous 
// buttons, which control which record is displayed in the data
// bound text boxes;
//
private void btnNext_Click(object sender, System.EventArgs e)
{
    this.BindingContext[this.view].Position += 1;
}

private void btnPrev_Click(object sender, System.EventArgs e)
{
    this.BindingContext[this.view].Position -= 1;
}

스레드 보안

이 유형의 모든 public static(Microsoft Visual Basic의 경우 공유) 멤버는 스레드로부터 안전합니다. 인스턴스 멤버는 스레드로부터의 안전성이 보장되지 않습니다.

플랫폼

개발 플랫폼

Windows Vista, Windows Mobile 5.0, Windows XP Professional with Service Pack 2 (SP2), Windows Server 2003, Windows Mobile 2003 for Pocket PC, Windows CE 5.0
버전 정보
.NET Framework 및 NET Compact Framework
3.5에서 지원됨
.NET Framework
3.0에서 지원됨
.NET Compact Framework 및 .Net Framework
2.0에서 지원됨

참고 항목

참조

SqlCeResultSet Class
SqlCeResultSet Members
System.Data.SqlServerCe Namespace