vb.net - 使用另一个用户控件从用户控件更改图片框、BackgroundImage
问题描述
我有一些来自用户控件(UserCtrl2)的按钮,并且想要动态更改 UserCtrl1、PictureBox BackgroundImage。从我下面的代码中,UserCtrl2 PictureBox BackgroundImage 属性确实发生了变化,但 winform 仍然显示以前的 BackgroundImage。
我尝试了以下方法,
- 在 UserCtrl1 中的 me.refresh,仍然没有任何反应。
- 不确定如何实现 {Get and Set} 或 dispose 函数。
提前感谢您的任何建议或参考。
这是我的 UserCtrl1 代码:
Public Class UserCtrl1
Public Sub UserCtrl1_Task(LEDno As UShort, LEDState As Boolean)
Select Case LEDno
Case 0 : Exit Sub
Case 1
If LEDState Then
PicBox_A.BackgroundImage = My.Resources.ResourceManager.GetObject("Blue_ON")
Else
PicBox_A.BackgroundImage = My.Resources.ResourceManager.GetObject("Blue_OFF")
End If
End Select
End Sub
End Class
这是我的 UserCtrl2 代码:
Public Class UserCtrl2
Private ButtonClick(4) As Boolean
Private Sub Btn_A_Click(sender As Object, e As EventArgs) Handles Btn_A.Click
Dim InputControl = New UserCtrl1
If Not ButtonClick(0) Then
ButtonClick(0) = True
Btn_A.BackgroundImage = My.Resources.ResourceManager.GetObject("Switch1_ON")
InputControl.UserCtrl1_Task(1, True)
Else
ButtonClick(0) = False
Btn_A.BackgroundImage = My.Resources.ResourceManager.GetObject("Switch1_OFF")
InputControl.UserCtrl1_Task(1, False)
End If
End Sub
End Class
解决方案
推荐阅读
- scala - 在 Scala 中将 Struct 数据类型转换为 Map 数据类型
- javascript - 如何在 for-each 函数中创建/打印没有输入限制的用户定义(输入)数组
- saml - SimpleSAMLphp:是否可以使用现有的身份验证服务进行身份验证?
- python - 使用opencv python从二进制图像中删除小白点
- android - 折叠工具栏标题重力未设置为底部
- google-api - Google drive apisharingRateLimitExceeded 错误,当尝试使用 google 权限 api 更改驱动器文件时
- terraform - 如何处理损坏的 terraform tfstate 文件
- python - 使用 auto-py-to-exe 将 .py 转换为 .exe 显示错误
- typescript - 我应该将什么作为参数传递给 addMarkerSync()?
- database - 通过 gitbash 将数据迁移到数据库