2015-06-19 2 views
-2

Я пытался создать структуру с двумя переменными, Double и PictureBox. Люди предложили использовать класс вместо struct. Когда я пытаюсь создать класс. Это не позволит мне добавить PictureBox card;, это просто подчеркивает его красным. Любое решение или причина, почему? или предположение о том, как я могу это сделать. Мне просто нужна переменная, которая может содержать изображение и двойной. Поэтому я могу использовать его как массив.C# переменная PictureBox в классе

+0

Вы собираетесь импортировать данные? что говорит сообщение об ошибке при наведении курсора на подчеркнутый текст? –

+0

Какое сообщение об ошибке вы получаете? Вероятно, вам не хватает инструкции using и, возможно, ссылки – Tobi

+0

Я получил «using System.Windows.Forms.PictureBox;» и он говорит, что я типа или пространства имен 'PictureBox' не удалось найти – GK28

ответ

0

Класс будет проще, и я бы также рекомендовал использовать List вместо array. Пример:

class Container 
    { 
     public PictureBox picture { get; set; } 
     public double number { get; set; } 
    } 

    List<Container> PicturesAndNumbers = new List<Container>(); 

Чтобы добавить вещи в список вам нужно будет сделать метод:

public void AddToList(Container ContainerToAdd) 
    { 
     PicturesAndNumbers.Add(ContainerToAdd); 
    } 

Что вы можете назвать так:

Container NewContainer = new Container(); 
    AddToList(NewContainer); 

Для этого вам нужно будет к ссылке System.Windows.Forms

+0

первый раз, используя контейнер, как добавить материал в контейнер? NewContainer.picture = pb; не работает – GK28

+0

Контейнер - это просто имя, которое я дал классу, чтобы указать, что он содержит переменные, которые вы хотели собрать вместе. Для установки изображения вы можете использовать 'NewContainer.picture.image' или' NewContainer.picture.ImageLocation'. Я сделал небольшую ошибку в своем ответе, которую я исправлю сейчас: свойства класса 'Container' должны быть сделаны' public', прежде чем вы сможете их установить. – Chavez

1

Использовать только System.Windows.Forms; то вы сможете использовать PictureBox карту;

Вы также должны использовать класс, а не структуру. См. Рекомендации по использованию класса struct vs.

Смежные вопросы