C# I';我在用这个预先存在的代码以另一种形式将数据从一个文本框传递到另一个文本框时遇到问题

C# I';我在用这个预先存在的代码以另一种形式将数据从一个文本框传递到另一个文本框时遇到问题,c#,winforms,C#,Winforms,我已经读过如何将一个值从一个文本框传递到另一个表单上的另一个文本框,但是我在计算如何用这个方法传递值时遇到了一个问题 private void editButton_Click(object sender, EventArgs e) { if (this.editForm != null) { MessageBox.Show(@"An 'Edit Safety Report Item' form already exists." + Environment.NewLine

我已经读过如何将一个值从一个文本框传递到另一个表单上的另一个文本框,但是我在计算如何用这个方法传递值时遇到了一个问题

private void editButton_Click(object sender, EventArgs e)
{
   if (this.editForm != null)
   {
      MessageBox.Show(@"An 'Edit Safety Report Item' form already exists." + Environment.NewLine +
      @"Please finish your edits already in progress before editing another 'Safety Report Item'.",
      @"Duplicate 'Edit Safety Report Item' form request", MessageBoxButtons.OK, MessageBoxIcon.Warning);
      return;
   }
   this.editForm = new MaintenanceForm(this.masterId);
   this.editForm.FormClosed += new FormClosedEventHandler(editForm_FormClosed);
   this.editButton.Enabled = false;
   this.editForm.Show(this);
}
当从报表窗体单击编辑按钮时,会调用此函数,当单击该按钮时,会打开窗体以便我可以编辑数据,它会将所有数据传递到编辑窗体,但不会填充一个文本框。因此,为了进行快速调整,我发现在编辑表单中将值从一个文本框传递到另一个文本框可能更容易


谢谢,

不要扰乱该应用程序。有人写道,
MaintenanceForm
对象,显然在它的构造函数中,它使用
this.masterId
填充MaintenanceForm的所有字段-可能是在向模型询问masterId后面的数据之后


查看
MaintenanceForm
的构造函数并检查文本字段未填充的原因。如果无法从MaintenanceForm内部的可用数据填充文本字段,请扩展构造函数和/或向MaintenanceForm添加一个属性,该属性接收字符串并将其放在视图的正确位置。

询问了数百万次。此代码中似乎没有此问题,可能是另一种形式。此代码没有将“所有数据”传递到下一个表单。它只传递一个ID值(
this.masterId
)。大概,
MaintenanceForm
使用此标识符从数据源获取记录的当前状态。如果它没有在它的一个控件中填充该记录中的值,那么错误就发生在任何地方。快速调整往往会成为永久的诅咒。@David,我想我理解你的意思。编写这篇文章的程序员使用数组从数据库中提取数据,我尝试通过添加一个新字段来传递给方法来更改数组,但随后我不断得到错误,没有重载构造函数需要8个参数,然后当我更改数组时,我得到一个数据错误,表示它超出了数组?。维护表单与用于添加新记录和编辑添加记录的表单相同。我不习惯看到使用数组来执行此操作。@L.B,很高兴看到我是幸运的一个突破百万大关的人。我找到了接收mastered的方法,所以我重载了它以获取字符串,并将字符串与mastered一起传递,并且正在抛出此错误..错误81'SafetyManagementSystem.MaintenanceForm'不包含接受'1'参数的构造函数C:\Users\Admin\Desktop\New folder(3)\Chris\SafetyManagementSystem\SafetyManagementSystem\MaintenanceForm.cs 36 36 SafetyManagementSystem,它将我带到方法正上方的这一行…public MaintenanceForm():这(0){}可能是时候添加一些源代码了。因为我无法真正理解您的意思。编译器抱怨说,您没有使用一个参数的构造函数,这意味着您删除了
MaintenanceForm(int-id)
。如果您只是将字符串添加到构造函数签名中,您也删除了它。您需要修复默认构造函数
MaintenanceForm()
,通过将其设置为
this(0,null)
,来调用extendend构造函数。老实说,我会请稍懂编码的人来修复此问题。