我以前从未在.net中创建过表单对象,因此请耐心等待。 我有一个充满文本框,组合框,网格等的表单。在某些情况下,我们需要将以前的数据视为只读,而前程序员创建了一个单独的winform,这意味着当一个表单更改时,它们都必须更改。我建议使用形式的对象,并将其上的所有内容设置为只读或禁用。文本框为只读,因此用户可以复制文本。
在我的课堂上,定义对象:私有objfrmFMReadOnly作为frmFM
当用户双击网格中的记录时,我将看到以下内容:
objfrmFMReadOnly = New frmFM
CreateReadOnlyForm()
CreateReadOnlyForm 是将所有文本框设置为只读状态并禁用其他某些控件的位置。我还使主对象成为对象表单的父对象。
然后我使用 objfrmFMReadOnly.Show()显示对象表单。在加载事件中,我读取了 Me.Name 的名称,以确定要运行的代码:
Select Case Me.Name
Case "FM"
PerformPreloadWork()
Case "ReadOnlyFM"
End Select
如您所见,只读对象尚未发生任何事情(尚未发生),但是,在 End Sub 之后,将为我不需要的原始表单触发 Deactivate 事件。当我跳过“停用”事件代码时,该对象将以我想要的方式显示。但是现在原始表单已经缩小到标题栏,当我尝试扩展它时,Deactivate事件想再次运行。 我觉得我很近但是很远。 有人可以帮我创建表单对象的需要吗?