【问题标题】:Is there an equivalent Namespace for Microsoft.VisualBasic.InteractionMicrosoft.VisualBasic.Interaction 是否有等效的命名空间
【发布时间】:2018-12-31 19:45:27
【问题描述】:

我正在将一个旧的 vb.net 项目转换为 c# 代码并遇到了某个命名空间

Interaction. MsgBox(„my text here“)

该方法属于命名空间 Microsoft.VisualBasic.Interaction,我想知道 C# 中是否有等效方法或更“通用”的命名空间。在我看来,这个项目主要用于 vb 项目,我想知道在 C# 项目中使用 Visual Basic 引用是否认为它的风格不好。

当然,我可以只使用 vb.net 命名空间,但我想知道是否有更好或更通用的解决方案。

最好的问候。

【问题讨论】:

  • System.Windows.Forms.MessageBox ?
  • 作为记录,命名空间是Microsoft.VisualBasicInteraction 是该命名空间中的一个模块。

标签: c# wpf vb.net reference namespaces


【解决方案1】:

这通常表明有人将 VB6 应用程序升级到 VB.Net 并做了最低限度以使其工作。

有一个标准MessageBox 控件,C# 和 VB.Net都应该使用。 VB 特定库中的大多数其他类/控件/方法也有标准替换,它们应该已经适应了。

VB 库中涉及 UI 工作的任何内容都大致相当于 WinForms 代码,因此您应该在 System.Windows.Forms namespace 中寻找替换。

【讨论】:

  • 我认为我可以使用 System.Windows.Forms,你知道为什么没有标准的 wpf messageBox 吗?我也觉得很奇怪,wpf 应用程序仍然使用旧的 winforms?
  • @yRadwan - 你的意思是像System.Windows.MessageBox?
  • @yRadwan : System.Windows.MessageBox 是标准的 WPF 消息框。
  • @yRadwan 这就是为什么你应该用wpfwinforms标记你的问题
  • @yRadwan - System.Windows.Forms.MessageBox 是 WinForms 标准消息框。 System.Windows.MessageBox 是 WPF 之一。由于所有 VB 库 UI 的东西都倾向于在后台使用 WinForms 功能,因此它是两者中的更接近。只是在您的第一条评论中,才有些明显的是,不仅有人将 VB6 升级到 VB.Net,而且他们显然也将其中的 一些 切换到了 WPF 而不是 WinForms。选择与您的应用程序的其余部分“匹配”的任何一个。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-17
  • 2021-11-28
  • 2010-12-07
  • 1970-01-01
  • 2013-10-28
相关资源
最近更新 更多