【问题标题】:Pass PictureBox Object to Method in Class将 PictureBox 对象传递给类中的方法
【发布时间】:2011-09-04 04:43:21
【问题描述】:

我正在尝试查找有关将图片框传递给方法的信息,我尝试将其与对象一起传递,但无济于事。

有人能指出我自己研究答案的正确方向吗,我已经尝试了很多搜索,但我不确定在寻找这样的答案时使用正确的措辞。

我正在创建一个类来操作传递给它的图片框。

public class picBoxStuff
{
    public void doStuff(Object pictureBox)
    {
        pictureBox.dooooostufff....
    }
}

提前致谢,

编辑:

谢谢大家,不幸的是,我不能投票给你们两个作为答案,但你们都很棒, 我将在此处添加一个注释,以添加到您提到的内容中,以供将来搜索此内容的人使用。

首先添加对 system.windows.forms 的引用,您会在 .net 引用中找到它。 接下来添加使用行“usage System.Windows.Forms;”。 最后,您可以将图片框作为图片框传递给方法。

忘记添加 windows.forms 的引用有点傻 :)

再次感谢各位, 斯科特

【问题讨论】:

    标签: c# parsing object methods picturebox


    【解决方案1】:

    PictureBox 是一个对象,因为所有类都继承自该类,但您应该将其视为 PictureBox 而不是 Object。因此,该方法应该需要一个 PictureBox 对象,而不是一个 Object 'object' 作为传递给该方法的参数。

    using System;
    using System.Drawing;
    using System.Windows.Forms;
    
    namespace WindowsFormsApplication5
    {
        public partial class Form1 : Form
        {
            public Form1()
            {
                InitializeComponent();
            }
    
            private void button1_Click(object sender, EventArgs e)
            {
                someMethod(pictureBox1);
            }
    
            private void someMethod(PictureBox p)
            {
                p.BackColor = Color.Blue;
                // this is an example of pictureBox being passed as 
                // a paramter to this method
            }
        }
    }
    

    【讨论】:

    • 嗯,我以为是这样,但是当我尝试这样做时,它并没有发现 PictureBox 是什么东西。
    • 那是因为您尝试传递的 PictureBox 未实例化(null)。你是用代码创建 PictureBox 吗? I 如果您将控件拖到表单上,它应该可以工作。就像我给你看的例子一样。
    【解决方案2】:

    如果你这样做呢?

    using System.Windows.Forms;
    
    //rest of your code
    

    【讨论】:

    • 感谢队友,使用您的答案,上面的答案很完美,我要为新手添加更多内容,您必须先参考“system.Windows?Forms”,然后再添加使用行。
    猜你喜欢
    • 2021-04-28
    • 1970-01-01
    • 1970-01-01
    • 2011-04-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-09
    • 2011-09-27
    相关资源
    最近更新 更多