多个打开路径
本文关键字:路径 | 更新日期: 2023-09-27 18:33:57
我有一个应用程序,可以从许多不同的操作中启动/新建表单(我们称之为QuickNoteForm(。它可以从许多不同的选项卡启动表单,并且大多通过我的应用程序中的按钮启动。
我基本上想跟踪它从哪里启动,即我需要跟踪它的启动路径。
实施这一点的好方法是什么。我正在考虑将其括为通过快速NoteForm的构造函数设置的属性。我想跟踪此表单是从哪个操作启动的。
这是一个 Windows 窗体应用程序,而不是 asp.net 应用程序。
谢谢。
创建一个列出
所有可能路径的枚举(或者一个带有常量的静态类,如果你担心可维护性,枚举在编译然后修改时不能很好地工作(。将一个自定义构造函数添加到窗体中,该构造函数将接受此枚举作为参数。实例化窗体时,请使用该构造函数。基本上将所有出现的New QuickNoteForm()
替换为New QuickNoteForm(yourEnumValue)
。为了兼容,向枚举添加一个Unknown = 0
值,这样调用表单的默认构造函数也可以工作,只是没有那么有用。
如果此方法不实用(请提供有关应用程序的更多详细信息(,还可以在窗体的构造函数中提供上下文控件作为参数。然后有像If typeOf ctl Is Button AndAlso DirectCast(ctl, Button).Text = "Something" Then
这样的代码和各种疯狂的东西。这促进了关注点的分离,即调用代码不需要知道如何调用,只需将自身作为参数传递,但也使您的代码更难维护,因为您最终可能会得到一个巨大的无所不知的方法,它将所有部分连接在一起。