首页 > 解决方案 > 如何将列表从表单发送到另一个表单

问题描述

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

我正在尝试从 to 发送一个包含名为(我的意思是:)类的对象cursoList<curso>列表。Form1aCurso

但是 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;
        }
    }
}

标签: c#windowswinformsvisual-studiolist

解决方案


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

您所要做的就是curso公开课程

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

推荐阅读