VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1633|回复: 13

為什么程序只能刷新一次呢?

[复制链接]

2

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
发表于 2020-1-10 12:00:01 | 显示全部楼层 |阅读模式
一個winForm程序,在主界面中兩個 datagrid 關聯顯示
,上面的datagrid顯示主表,下面的datagrid 關聯顯示從表,


我在另一個界面中輸入了一個主從表,然后
在主界面中加了一個刷新的按鈕,新建立了一個
dataset,刷新一下,可以在
主界面中將剛才在另一個界面中輸入的數据在主界面中顯示出來,
但是當在另一個界面中再添加數据的時候,回到主界面,再點擊"刷新"按鈕
就顯示  :名稱為 'masterAndDetail' 的關聯已經屬於這個 DataSet的錯誤提示
如何才能夠將原來的關聯清除呢?
回复

使用道具 举报

1

主题

6

帖子

6.00

积分

新手上路

Rank: 1

积分
6.00
发表于 2020-1-11 15:36:02 | 显示全部楼层
把錯誤代碼貼出來~
回复

使用道具 举报

2

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-13 18:36:01 | 显示全部楼层
代碼如下,

    Private Sub btnRefresh_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnRefresh.Click
      
          dim newDset as new dataset   '新建立一個dataset
  
        Dim str As String = "DRIVER={MySQL ODBC 3.51 driver}; SERVER=localhost;DATABASE=jsd;UID=root;PASSWORD=ji;OPTION=3"
        Dim conn As New OdbcConnection(str)

        Dim newtblmaster As New DataTable  '新建立存放主表的dataTable
        Dim newtblDetail As New DataTable   '新建立從表從表的dataTable
        Me.dset.Clear()   '先清除原來的dataset

        conn.Open()

        Dim strSql1 As String = "select  * from tableMaster  "      

        Dim strSql2 As String = "select * from tableMaster

        dataAdapterTablemaster.SelectCommand = New OdbcCommand(strSql1, conn)
       dataAdapterTableDetail.SelectCommand = New OdbcCommand(strSql2, conn)

        dataAdapterTablemaster.Fill(newtblmaster)
       dataAdapterTableDetail.Fill(newtblDetail)
        conn.Close()

        newDset.Tables.Add(newtblmaster)
        newDset.Tables.Add(newtblDetail)


        Dim relorderTodetail2 As DataRelation'建立關聯

        relorderTodetail2 = New DataRelation("tablemasterTabledetail", newtblmaster.Columns("ID"), newtblDetail.Columns("ID"))
        newDset.Relations.Add(relorderTodetail2)      此處顯示錯誤'名稱為 'tablemasterTabledetail' 的關聯已經屬於這個 DataSet。


        DataGrid1.DataSource = newtblmaster '兩個表關聯顯示
        DataGrid2.DataSource = newtblmaster
        DataGrid2.DataMember = "tablemasterTabledetail"

   
    End Sub
回复

使用道具 举报

2

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-14 09:27:02 | 显示全部楼层
sorry ,此處的     Dim strSql2 As String = "select * from tableMaster
應該改成   Dim strSql2 As String = "select * from tableDetail"
回复

使用道具 举报

0

主题

4

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-15 14:54:01 | 显示全部楼层
繁体的真难看
回复

使用道具 举报

0

主题

3

帖子

3.00

积分

新手上路

Rank: 1

积分
3.00
发表于 2020-1-17 20:00:02 | 显示全部楼层
顶下.关注.
回复

使用道具 举报

0

主题

4

帖子

4.00

积分

新手上路

Rank: 1

积分
4.00
发表于 2020-1-17 21:09:01 | 显示全部楼层
Dim strSql1 As String = "select  * from tableMaster  "      
        Dim strSql2 As String = "select * from tableMaster
这里有问题
回复

使用道具 举报

1

主题

23

帖子

15.00

积分

新手上路

Rank: 1

积分
15.00
发表于 2020-1-19 20:27:01 | 显示全部楼层
清空下绑定,再重新绑定
回复

使用道具 举报

2

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-22 00:45:01 | 显示全部楼层
to niannianyss:
dim strsql2 as string="select  * fro tableMaster" 是我上传文件时打字错误
回复

使用道具 举报

2

主题

8

帖子

7.00

积分

新手上路

Rank: 1

积分
7.00
 楼主| 发表于 2020-1-22 02:54:01 | 显示全部楼层
to: irwin8888:
绑定我已经清空了啊
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表