mysql - datagridview单击事件句柄并打开新表单

标签 mysql database vb.net

我将尝试打开另一个窗口来编辑 datagridview 数据。这是我的代码。请修复此错误。 项目名称是短信。 datagridview 名称为 StudentsDataGridView

Error BC30389 'sms.edit.idTextBox' is not accessible in this context because it is 'Private'.

Private Sub StudentsDataGridView_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles StudentsDataGridView.Click

    Dim editform As New edit

    editform.idTextBox.Text = StudentsDataGridView.CurrentRow.Cells(0).Value.ToString()
    editform.TxtAdmNo.Text = StudentsDataGridView.CurrentRow.Cells(1).Value.ToString()

    editform.ShowDialog()

End Sub

最佳答案

edit 文本框的 Modifier 属性更改为 Public

但正确的方法是将参数传递到编辑窗口。

打开edit代码,添加一个接收参数的构造器,然后编写代码以将值放入所需的控件中:

Public Sub New(id As String, admNo As String)

    InitializeComponent()
    idTextBox.Text = id
    TxtAdmNo.Text = admNo
End Sub

现在在调用者代码中您可以执行以下操作:

Dim val_id = StudentsDataGridView.CurrentRow.Cells(0).Value.ToString()
Dim adm = StudentsDataGridView.CurrentRow.Cells(1).Value.ToString()

Dim editform As New edit(val_id, adm)

editform.ShowDialog()

这样您就可以分离软件部分之间的依赖性,并且还要求您在创建第二个表单时提供所需的数据。

关于mysql - datagridview单击事件句柄并打开新表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44793630/

相关文章:

php - 如何在 php 的表中打印行 mysql 数组?

python - 可移植远程连接将数据从 MySQL 提取到 Excel

mysql查询加入query2

database - 动态配置Spring邮件发送器

mysql - VB.NET mysqldump 导出时出现两个条件错误

sql - SELECT FOR UPDATE 的奇怪死锁 PostgreSQL 死锁问题

mysql - Laravel 连接分页

vb.net - If 语句和 For 循环 - 如何只取每 5 个数字?

asp.net - 关闭PC时ASP页面崩溃

.net - 在 VB.NET 中使用 VB 6.0 窗体