sql-server - 当以另一种形式保存数据时,Vb.Net 以主形式更新 Datagridview

标签 sql-server vb.net datagridview auto-update

这是我的函数,用于显示从 sql server 到 Datagridview 的数据

 Private Function getpdfinfo1() As DataTable
    DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect

    Dim dtpi As New DataTable
    Dim connString As String = ConfigurationManager.ConnectionStrings("pdflib.My.MySettings.hazimdbConnectionString").ConnectionString

    Using conn As New SqlConnection(connString)
        Using cmd As New SqlCommand("select idpdf as  ID,pdfname as  Title, categories as Categories , extension as Extension from pdfinfo where ( username='" & Label10.Text & "' ) ", conn)
            conn.Open()
            Dim reader As SqlDataReader = cmd.ExecuteReader()
            dtpi.Load(reader)
            conn.Close()
        End Using
    End Using
    Return dtpi

End Function

在 Main Form Load 中,甚至我正在调用函数 getpdfinfo1(),如下所示

Private Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        DataGridView1.DataSource = getpdfinfo1()
End Sub

我从另一个表单保存数据。保存数据的按钮点击事件如下图

 cmd = New SqlCommand("Insert into pdfinfo (pdfname,pdfdata,categories,username,iduser,extension) values (@pdfname,@pdfdata,@categories,@username,@iduser,@extension) ", connection)
        connection.Open()
        cmd.Parameters.Add(New SqlParameter("@pdfname", SqlDbType.NVarChar, 100)).Value = TextBox2.Text
        cmd.Parameters.Add(New SqlParameter("@categories", SqlDbType.NVarChar, 100)).Value = ComboBox1.Text
        cmd.Parameters.Add(New SqlParameter("@username", SqlDbType.NVarChar, 100)).Value = TextBox4.Text
        cmd.Parameters.Add(New SqlParameter("@iduser", SqlDbType.Int)).Value = Label6.Text
        cmd.Parameters.Add(New SqlParameter("@extension", SqlDbType.NChar, 10)).Value = Path.GetExtension(ofd.FileName)
        Dim fs As New FileStream(ofd.FileName, FileMode.Open, FileAccess.Read)
        Dim br As New BinaryReader(fs)
        Dim file() As Byte = br.ReadBytes(br.BaseStream.Length)
        cmd.Parameters.Add(New SqlParameter("@pdfdata", SqlDbType.VarBinary)).Value = file
        cmd.ExecuteNonQuery()
        Label8.Text = "Upload Completed"

So I want when clicked Save button in (save data Form) then the Datagridview** in Main Form (Form 2) will be updated automatically.

Or, How to create function update Datagridview when Sql data changes.

最佳答案

getpdfinfo1函数是private的,将其设为public函数,在保存按钮点击事件中调用该函数。要从其他表单调用函数,您只需在表单 name.function 前加上前缀即可。

关于sql-server - 当以另一种形式保存数据时,Vb.Net 以主形式更新 Datagridview,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54036456/

相关文章:

c# - 快速更新的DataGridView

c# - 如何使 DataGridView 的宽度和高度适合其内容?

PHP 值 null 到 SQL Server 插入语句

SQL 存储过程 OUTPUT 返回多行

sql - 将四列插入一列

c# - VB.NET 与 C# 中的嵌入式资源

.net - VB.net Mid 作为左运算符特殊(奇怪?)行为

.net - 进度条四舍五入到最接近的整数 - VB.NET

c# - 如何更改动态添加的 DataGridViewComboBoxColumn 的组合框单元格的文本?

sql-server - 如何安全地将密码存储在数据库中?