VB.Net默认表单实例

2023-12-01

我已替换(正则表达式)所有对默认表单实例在我的项目中,我现在想确保我不再使用默认实例。

似乎默认实例功能无法禁用(不改变类的ctor)

任何人都知道如何在 VB.Net 中查找默认表单实例的所有用法(或者 - 使用类名访问非共享成员)

仅供参考:我正在将 VS2017 与 ReSharper 一起使用


与普遍的看法相反,这一代人默认实例在 WinForm 应用程序中,这不是 Visual Basic 的强制功能。

来自 Visual Basic 语言规范第 11 版(添加了重点):

11.6.2 默认实例 在某些情况下,从公共基类派生的类通常或总是只有一个实例。为了 例如,用户界面中显示的大多数窗口只有一个 实例随时显示在屏幕上。为了简化工作 这些类型的课程,Visual Basic可以自动生成类的默认实例提供单个、轻松 每个类的引用实例。

问题是我不知道任何文档可以告诉您如何启用/禁用它们的创建。据了解,该功能是应用框架可以在项目属性页的“应用程序选项卡”中启用/禁用。但是,禁用应用程序框架不会禁用默认实例生成。

如果在创建项目时选择“Windows 窗体应用程序”模板,而是选择“空项目”模板并继续添加窗体,则可以创建一个 WinForm 项目,其中“启用应用程序框架”复选框为变灰并且不可选择。您还会发现无法使用默认表单实例。由此,您可以推断出该功能可以通过“*.vbproj”文件进行配置。

控制项是<MyType>标签。该属性的可能值为:

  • 空 - 应用程序框架不可用
  • Console
  • Windows 窗体 - 启用应用程序框架
  • WindowsFormsWithCustomSubMain - 禁用应用程序框架
  • Windows - 类库
  • WebControl - 库

因此,如果您想将现有项目转换为不支持默认实例的项目,您可以编辑“*.vbproj”文件并更改<MyType>财产给Empty.

请注意,这样做还将消除应用程序框架的其他功能,例如My.Computer and My.User,但您始终可以自己实现这些功能,如中所述如何:使用我的命名空间(C# 编程指南).

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

VB.Net默认表单实例 的相关文章

随机推荐

  • 如何触发猫鼬 updateAt

    当数据发生变化时 我需要更新我的模型 可悲的是 this似乎不起作用 const mongoose require mongoose const moment require moment const Schema mongoose Sch
  • Spring MVC 中一种表单有多个 commandName

    我有一个jsp页面 我将在其中使用来自不同POJO类的许多属性 因此我需要在表单中使用两个commandName 可以在控制器中使用多个 ModelAttribute 那么如果多个 commandName 不起作用又有什么意义呢 例如我想插
  • 程序在 JFrame 高度最大化时不重新绘制

    您可以通过多种方式通过鼠标拖动来调整 JFrame 的大小 您可以调整其高度 顶部 底部边缘 您可以调整其宽度 左 右边缘 您可以调整两者的大小 在角落 您可以通过将整个窗口拖动到显示器顶部边缘来最大化它 您可以通过将其顶部 底部边缘拖动到
  • 根据 MacOS 文件夹中的文件名更改文件的创建和修改日期和时间

    我的文件夹中有很多文件 文件名如下 20190618 213557 mp4 20190620 231105 mp4 20190623 101654 mp4 我需要根据文件名更改创建日期和时间 20190618 213557 YYYYMMDD
  • PHP 从 API 响应中获取 json 汇率值

    我正在使用货币层 JSON API 来获取实时货币转换值 有谁知道我如何获取这两个值 result 值和 quote 使用 PHP 从下面的 API 响应中获取值 我是 PHP 新手 我想知道是否可以将其存储在变量中 这是 JSON suc
  • 使用 R 中的 str_count 函数对多个模式进行计数

    对 R 相当陌生 并且在使用 R 时遇到了一些困难string count函数来检测多个未知且包含在单独向量中的单词 现在 我知道如何使用以下代码检测模式的单个实例 str count mydf string Apples 我想要做的是从本
  • 如何获取pivot_wider而不是列表中的总值总和?

    data lt data frame row id 0 19 Prediction c 4 20631885375613 0 677197140556434 0 889543113836738 37 8093227242093 105 86
  • Azure 服务结构实例计数

    我正在使用 azure 服务结构开发 POC 将我的服务部署在本地集群中 并且在 Local xml 中的默认设置下运行良好 当我更改实例计数时 它会抛出以下异常 更改实例计数的选项在哪里 基本上我现在正在尝试在两个节点上运行我的服务 当默
  • 使用正则表达式进行 Spark 过滤

    我试图将文件数据过滤为每个日期的好数据和坏数据 因此将得到 2 个结果文件 从测试文件中 前 4 行需要输入良好的数据 最后 2 行需要输入错误的数据 我有 2 个问题 我没有得到任何好的数据 结果文件为空 错误的数据结果如下所示 仅选取名
  • 没有 exec 的 fork,以及共享对象使用的 pthread_mutex_t

    我正在处理一个执行以下操作的网络服务器项目fork没有exec 该程序依赖于OpenSSL 而OpenSSL需要一定数量的锁 CRYPTO NUM LOCKS准确地说 目前约为40 锁通常是pthread mutex t在 Linux 上
  • 在 bash 脚本中使用 screen

    我正在远程服务器上运行游戏服务器 我使用独立的屏幕实例使其保持运行 我现在正在创建一个脚本 可用于关闭服务器 备份所有重要文件并再次启动它 但是我在处理屏幕时遇到了一些困难 我假设我可以通过在脚本中调用 screen r 来切换到脚本中的分
  • LINQ 按日期降序对对象集合进行排序

    我有一堆对象 产品 我想先按创建日期降序对它们进行排序 然后只显示前 10 条记录 创建日期 DateTime 的格式如下 4 4 2007 12 00 00 AM 这是我尝试过的 如何按日期降序排列前 10 名 var productLa
  • 将带有复合键/外键的表映射到该表

    我正在尝试映射具有组合键的表并映射引用该表的另一个表 假设这些表 ITEMDELIVERY with relevant columns ITEMDELIVERY ID DELIVERY DATE ITEMDELIVERYDETAIL wit
  • jQuery 中的 jQuery() 函数有什么作用?

    In 这个视频有一段代码是这样的 if jQuery jQuery function 我从未见过jQuery 之前的函数 话又说回来 我不是一个精明的 jQuery 用户 它有什么作用 它是默认随 jQuery 一起发布还是特定于IxEdi
  • 在 Android SDK 管理器中找不到支持包

    我需要支持包 jar 文件 我打开了页面http developer android com sdk compatibility library html Downloading并按照他们所说的去做 启动 SDK 和 AVD 管理器 在 E
  • 无法使用状态值作为子组件的 props

    在我的 React js 应用程序中 我似乎无法使用状态值作为子组件的道具 在父组件中 constructor 应用程序有一个称为空状态selectedWarehouseID 这种状态 selectedWarehouseID 应该更新一些信
  • 如何打开特定相册或文件夹的默认图库应用程序?

    我在网上找到的每个例子都是打开图库并从图库中获取图像作为结果 我的需要是我不想将结果或图像添加到我的应用程序中 我只想触发图库应用程序来显示特定的图像文件夹 我的应用程序有单独的文件夹来保存图像 我需要将用户直接导航到该路径 试试这个代码
  • 在 Jscript 中获取给定用户的特殊文件夹路径

    如何获取当前用户以外的特定用户的 shell 文件夹 例如 本地设置 或 本地应用程序数据 的路径 虽然有一些方法可以在 Windows Script Host 中获取特殊文件夹路径 WshShell SpecialFolders and
  • odeint 简单一维 ode 示例无法编译

    我试着跑指定示例在 Debian Squeeze g 4 4 上的 boost 1 54 0 中 洛伦兹系统工作正常 但是简单的一维颂歌 include
  • VB.Net默认表单实例

    我已替换 正则表达式 所有对默认表单实例在我的项目中 我现在想确保我不再使用默认实例 似乎默认实例功能无法禁用 不改变类的ctor 任何人都知道如何在 VB Net 中查找默认表单实例的所有用法 或者 使用类名访问非共享成员 仅供参考 我正