none
如何實作物件複製功能 RRS feed

  • 問題

  • === 程式碼 ===

    '目前點選到的步驟
    Private ClickStep As new Byte
    '複製的物件
    Private CloneStep As new Object
    '物件集合
    Private StepArray As new ArrayList

    '複製功能
    Private Sub btCopy_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btCopy.Click
                Me.CloneStep = Me.StepArray(Me.ClickStep - 1)
    End Sub

    '貼上功能
    Private Sub btPaste_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btPaste.Click
                 Me.StepArray.Insert(ClickStep - 1, Me.CloneStep)
    End Sub

    =============
    StepArray裡頭是存放著DataRow物件。
    目前有個問題是,雖然可以顯示兩筆資料,但是是指向同一個物件(修改其中一個值,另一個跟著變),
    想請教的是,該如何正確製作出物件的複製、貼上功能(兩筆資料是不一樣的物件)。

    先謝謝囉~~~

    2009年3月20日 上午 11:26

解答

  • DataRow 沒有內建複製方法,所以你要用 DataRow.ItemArray 配合 Array.Copy 去處理。

    你先看看線上手冊中這個主題是不是你要的:
    複製 DataSet 內容 (ADO.NET)
    ms-help://MS.MSDNQTR.v90.cht/wd_adonet/html/cb846617-2b1a-44ff-bd7f-5835f5ea37fa.htm


    論壇是網友平等互助 保證解答請至 微軟技術支援服務
    2009年3月20日 下午 12:29