在我的工作中,我目前正在尝试将VB6转换为C#转换项目,这是一个很久以前其他人构建的大型工具。

我遇到的是一个未完成的Java项目,称为“ Designer”,该项目在将解析程序运行到VB文件上以生成.cs文件之前会生成***。designer.cs文件。 我不了解设计人员生成的这些.designer.cs文件的目的是什么,因为我(有限)理解。designer.cs文件通常是由编写C#的任何IDE自动创建的。

namespace RAUI
{ 
  partial class frmAbout
  { 

  private System.ComponentModel.IContainer components = null;
  protected override void Dispose(bool disposing)
  {
    if (disposing && (components != null))
    {
    components.Dispose();
    }
    base.Dispose(disposing);
  }

  }

  private void InitializeComponent()
  {
    this.cmdOK = new GGControls.DRGButton();

    this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.FixedDialog;
    this.Text =    "Test";
    this.Location = new System.Drawing.Point(156, 129);
    this.ClientSize = new System.Drawing.Size(225, 106);
    this.MaximizeBox = false;
    this.MinimizeBox = false;
    this.ShowInTaskbar = false;

    this.cmdOK.Name = "cmdOK";
    this.cmdOK.Text =       "&OK";
    this.cmdOK.CausesValidation = false;
    this.AcceptButton = this.cmdOK;
    this.cmdOK.TabIndex = 3;
    this.cmdOK.Location = new System.Drawing.Point(72,72);
    this.cmdOK.Size = new System.Drawing.Size(81,27);
  }
}

我认为这个非常简单的示例仅创建实现c#代码所需的控件和属性,但是我不明白为什么在转换过程中需要有一个非常大而复杂的设计器脚本。

任何帮助将不胜感激!

#1楼 票数:4 已采纳

您正确地说* .designer.cs文件通常是由IDE创建的。 但是,在这里自己生成它们是有意义的。

要了解原因,您必须了解该文件实际上是什么。 IDE将您在实际表单设计器上所做的所有工作(因此,designer.cs)收录到生成的代码文件中,该文件包含创建表单所需的所有代码。

实际上,您可能根本不需要设计者就能创建一个表单,该代码是如此混乱,以至于要做两个文件(和partial类)是有意义的。

因此,在此转换中,由于您还没有设计器文件来进行直接转换,因此基于其他现有文件生成它们似乎是完全合理的。

  ask by HavelTheGreat translate from so

未解决问题?本站智能推荐:

1回复

将VB6可选参数转换为C#[重复]

这个问题已经在这里有答案 : 4年前关闭。 如何在C#中使用可选参数? (21个回答) 我有一个VB6函数,该函数具有一个可选的日期间
3回复

将vb6类型转换为VB.net或C#结构

我正在将最初用vb6编写的应用程序转换为vb.net。 该应用程序要做的一件事是,它将“ Type”对象发送到dll。 我尝试将类型转换为结构并p /调用dll,但它似乎不起作用。 我被困了一个星期,任何帮助将不胜感激 这是该类型的vb6代码 这是dll的调用方式 这
4回复

PV 函数和移植 VB6 到 C#

我正在将一些经典的 VB6 代码移植到 C#,并且偶然发现了PV函数的用法。 我觉得错误包括对 Microsoft.VisualBasic 程序集的引用。 这是经常做的事情,还是我应该探索更多的选择。 我想到的下一个想法是在 Reflector 中探索这个 PV 功能。
1回复

在C#中读取VB 6二进制文件

我有一个由VB6应用程序编写的二进制文件,现在想使用C#应用程序读取VB6导出的二进制文件。 我已经在Microsoft C#项目中使用了Microsoft.VisualBasic.dll。 但是,C#应用程序中存在一些数据不一致的地方,但是我已经在VB.net中对其进行了检查,并且效果
2回复

此VB6操作的等效C#语句产生问题

我在VB中有这个代码行: Dim Sqrt As Double Sqrt = Radius ^ 2 - (CenterX - X) ^ 2 上面的语句中的参数将传递以下值: X= -7.3725025845036161 Double CenterX =0.0 D
1回复

将使用WinHttp.WinHttpRequest的简短vb6代码迁移到c#或vb.net

有人可以指导我如何将vb6代码转换为c#或visual basic.net。 我试图使用System.Net.WebRequest()类但没有成功(我的所有东西都引发了另一个异常,因此我认为添加我的C#代码将无济于事)。 这段代码可以正常工作(我使用vba编辑器对其进行了测试)。
6回复

从VB6字符串数据到.NET字节数组的转换

我正在编写一个C#应用程序,该程序从VB6代码生成的SQL数据库中读取数据。 数据是单打数组。 我正在尝试将它们转换为浮点数[] 以下是将数据写入数据库的VB6代码(无法更改此代码): 如您所见,数据被放入一个临时文件中,然后以VB6字符串的形式读回并写入数据库(dbLongB
2回复

在VB.NET和C#中调用COM接口方法

我有一个第三方软件,它是进程外ActiveX服务器。 我猜想,此应用程序是在VB6中开发的,文档使用VB作为示例客户端。 在与C#争夺这个功能后,我想我会在VB.NET中尝试它,令我惊讶的是,似乎相同的代码在VB.NET中可以工作,而在C#中却没有。 有问题的方法具有签名