C# 在form class下实例化类的对象
我不熟悉windows窗体。我试图实例化一个公共类的对象,并在按下按钮1时调用方法C# 在form class下实例化类的对象,c#,winforms,C#,Winforms,我不熟悉windows窗体。我试图实例化一个公共类的对象,并在按下按钮1时调用方法drawBoard()。方法drawBoard(),我想通过该方法设置pictureBox2的属性。但是代码没有起作用 public partial class Form1 : Form { public Form1() { InitializeComponent();
drawBoard()
。方法drawBoard()
,我想通过该方法设置pictureBox2的属性。但是代码没有起作用
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public class gameBoard :Form1
{
public void drawBoard()
{
pictureBox2.ImageLocation = @"E:\My Data\DoCx\CS\3rd Sem\OOP\proj\images\a.png";
pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
}
}
private void button1_Click(object sender, EventArgs e)
{
gameBoard a = new gameBoard();
a.drawBoard();
}
}
还试图通过其他两种方式实现这一点:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
pictureBox2.ImageLocation = @"E:\My Data\DoCx\CS\3rd Sem\OOP\proj\images\a.png";
pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
pictureBox2.BackColor = Color.Transparent;
}
}
及
两者都起作用了。代码运行时直接加载图像。当第二次按下按钮1时也是如此。我想知道在用户定义类的方法中定义pictureBox属性时如何调用它们 如果仔细观察,您的
gameBoard
被定义为Form1
中的嵌套类,并且它也继承自Form
控件,这是没有意义的。您可能希望在类的外部定义类(可能在单独的文件中)
如果仔细观察,您的
gameBoard
被定义为Form1
中的嵌套类,并且它也继承自Form
控件,这是没有意义的。您可能希望在类的外部定义类(可能在单独的文件中)
您的内部类gameBoard对名为pictureBox2的变量一无所知。它看不到这是容器类中定义的内容。调用pictureBox2时将其传递给drawBoard方法内部类gameBoard对名为pictureBox2的变量一无所知。它看不到这是容器类中定义的内容。调用pictureBox2时将其传递给drawBoard方法
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
pictureBox2.ImageLocation = @"E:\My Data\DoCx\CS\3rd Sem\OOP\proj\images\a.png";
pictureBox2.SizeMode = PictureBoxSizeMode.Zoom;
}
}
public class gameBoard
{
private PictureBox _box;
public gameBoard(PictureBox box)
{
_box = box;
}
public void drawBoard()
{
_box.ImageLocation = @"E:\My Data\DoCx\CS\3rd Sem\OOP\proj\images\a.png";
_box.SizeMode = PictureBoxSizeMode.Zoom;
}
}