目前我有这个清单:
List<Car> cars = new List<Car>()
{
new Car()
{
CarId = 1,
CarName = "BMW",
CarMod = "M6",
},
}
在Form1.cs下。我希望它可以在一个名为MyCars.cs的类中使用,并且能够使用位于Form1.cs下的这个linq来调用它。
private void btn_Click(object sender, EventArgs e)
{
string entered = txtBox.Text;
var q = from car in cars
where car.CarMod.Contains(entered)
select cars;
dataGridView1.DataSource = query.ToList();
}
如何在没有得到“当前背景下存在汽车名称”的情况下打电话给它?
把它放在课堂上会不会更好更优雅?我正在考虑创建一个名为MyCars.cs的类
非常感谢所有帮助
答案 0 :(得分:1)
除非我弄错了,否则你的目标不是创建一个新的类型,而是将你的汽车逻辑放在一个单独的文件中?只要类名相同,您就可以将其放在另一个文件中。如果表单是以“正常”方式制作的,从.net 2.0及以上开始,它们应该是部分类
//Form1.cs
namespace A
{
public partial class Form1
{
public Form1()
{
InitalizeComponent();
}
}
}
只要在另一个文件中同时使用相同的名称空间和部分类,就可以了
//MyCars.cs
namespace A
{
partial class Form1
{
List<Car> cars = ..... /etc
}
}