Передать объект PictureBox методу в классе

#c# #parsing #object #methods #picturebox

#c# #синтаксический анализ #объект #методы #picturebox

Вопрос:

Я пытаюсь найти информацию о передаче picturebox методу, я пытался передать его с помощью object, но безрезультатно.

Может ли кто-нибудь указать мне правильное направление для самостоятельного поиска ответа, я перепробовал много поисковых запросов, но я не уверен в правильной формулировке, которую следует использовать при поиске такого ответа.

Я создаю класс, который управляет полем изображения, которое было передано ему.

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

Заранее большое спасибо,

Редактировать:

Спасибо, ребята, к сожалению, я не могу проголосовать за вас обоих в качестве ответов, но вы оба фантастические, я добавлю здесь примечание, чтобы добавить к тому, что вы оба упомянули, для людей, ищущих это в будущем.

Сначала добавьте ссылку на system.windows.forms, by вы найдете ее в .net references. Затем добавьте строку использования «Система использования.Windows.Формирует;». И, наконец, вы можете передать PictureBox как picturebox методу.

Немного глупо с моей стороны забыть добавить ссылку на windows.forms 🙂

Еще раз спасибо, ребята, Скотт

Ответ №1:

PictureBox является объектом, потому что все классы наследуют от этого класса, но вы должны обращаться с ним как с PictureBox, а не как с Object. Таким образом, метод должен требовать объект PictureBox вместо объекта ‘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
        }
    }
}
  

введите описание изображения здесь

Комментарии:

1. хм, я думал, что это так, но когда я пытаюсь это сделать, он не регистрирует, что PictureBox — это что-то.

2. Тогда это потому, что PictureBox, который вы пытаетесь передать, не создан (null). Вы создаете PictureBox с помощью кода? I Если вы перетащите элемент управления в свою форму, он должен сработать. Точно так же, как в примере, который я вам показал.

Ответ №2:

что, если вы сделаете это?

 using System.Windows.Forms;

//rest of your code
  

Комментарии:

1. спасибо, приятель, используя твой ответ и приведенный выше, я могу добавить еще кое-что для новичков, которым нужно ссылаться на «system. Windows? Сначала сформируйте «, прежде чем добавлять строку using.