如何将表单从表单发送到另一个表单

时间:2018-05-19 13:14:48

标签: c# windows winforms visual-studio list

我在Windows窗体项目中有两个表单:Form1aCurso

我正在尝试从cursoList<curso>向名为Form1(我的意思是:aCurso}的类的对象发送一个List。

但是Visual Studio显示了这个:

  

辅助功能不一致:参数List<curso>的类型不如方法aCurso.aCurso(List<curso>)可访问。

所以,这是来自Form1的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace _18_05_18
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        List<curso> cursos = new List<curso>();
        private void btnAC_Click(object sender, EventArgs e)
        {
            Form f = new aCurso(cursos);
            f.Show();
        }
    }
}


以下是来自aCurso的代码:

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace _18_05_18
{
    public partial class aCurso : Form
    {
        List<curso> cursos = new List<curso>();
        public aCurso(List<curso> cursos)
        {
            InitializeComponent();
            this.cursos = cursos;
        }
    }
}


这是来自班级curso的代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace _18_05_18
{
    class curso
    {
        private string nombre;
        public curso(string nombre)
        {
            this.nombre = nombre;
        }
    }
}

1 个答案:

答案 0 :(得分:1)

如果签名的某些参数类型不公开,则不能公开公共方法签名。由于调用者无法构造所需的参数,因此无法从外部调用该方法。

您所要做的就是让curso上课

public class curso
{
    private string nombre;
    public curso(string nombre)
    {
        this.nombre = nombre;
    }
}