在这里,您可以看到包含2个网格视图的表单代码。两者都具有相同的数据集bindingsource。由数据源构成的数据集有2个不同的sql查询。
filld()和fillauswahl()在gridview中填充了一个“select distinct”查询。
当用户点击button1时,该gridview中的所选项目保存在“verzeichnis1”中,此var将被粘贴到fillauswahl(),这是
select* from mytable where columnx = verzeichnis1
我遇到的问题是两个网格视图在使用filld()的formload期间填充,并通过单击fillverzeichnis()的按钮我不知道如何分离!?我想这很容易。干杯和谢谢
Public Class Importverzeichnis
Public verzeichnis1 As String
Private Sub Importverzeichnis_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
Me.SKM2TableAdapter.Filld(Me.SLXADRIUMDEVDataSet.SKM2)
Catch ex As System.Exception
System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
For Each cell As DataGridViewCell In DataGridView1.SelectedCells
verzeichnis1 = cell.Value
Next
Me.SKM2TableAdapter.Fillauswahl(Me.SLXADRIUMDEVDataSet.SKM2, verzeichnis1)
End Sub
End Class
Public verzeichnis1 As String
Private Sub Importverzeichnis_Load(sender As Object, e As EventArgs) Handles MyBase.Load
Try
Me.SKM2TableAdapter.Filld(Me.SLXADRIUMDEVDataSet.SKM2)
Catch ex As System.Exception
System.Windows.Forms.MessageBox.Show(ex.Message)
End Try
End Sub
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
For Each cell As DataGridViewCell In DataGridView1.SelectedCells
verzeichnis1 = cell.Value
Next
Me.SKM2TableAdapter.Fillauswahl(Me.SLXADRIUMDEVDataSet.SKM2, verzeichnis1)
End Sub
End Class
编辑:我创建了一个新的连接,一个新的数据集和新的数据适配器,现在它可以工作:
但如果可以使用我的第一个数据集和我的第一个适配器,我会更高兴。如果任何人知道如何做到这一点,我会很高兴答案
答案 0 :(得分:0)
对我而言,最好的方法是将数据作为普通的select语句下拉,然后在代码隐藏中过滤数据。通过将具有相同数据的数据集填充两次,您只需使来自数据库的流量变慢。但是,如果您希望保留当前数据集,我会假设其中有两个表,每个表一个。如果是这种情况,那么改变:
datagridview2.DataSource = ds
为:
datagridview2.DataSource = ds.Tables(1) 'assumes the second table is used for this datasource