Как использовать одну и ту же информацию в нескольких формах - PullRequest
0 голосов
/ 04 января 2010

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

Я создал класс под названием «data», который содержит следующее:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Application1
{
    public class data
    {

        public string SearchAirport
        {
            get 
            { 
                return searchairport; 
            }
            set 
            { 
                searchairport = value; 
            }


        }
    }
}

Что мне нужно добавить в мои формы, чтобы использовать этот класс ??

Прямо сейчас все, что у меня есть:

data.SearchAirport = commandAirport;
string working = data.SearchAirport;

Я знаю, что должен добавить что-то еще, чтобы не получить:

"Ошибка 11 Ссылка на объект требуется для нестатического поля, метода или свойства 'Sector_Datastore_2._0.data.SearchAirport.get' ..."

ошибка

Ответы [ 4 ]

2 голосов
/ 04 января 2010

Ну, вам нужно объявить searchairport:

public class data
{
    private string searchairport;

    public string SearchAirport
    {
        get 
        { 
            return searchairport; 
        }
        set 
        { 
            searchairport = value; 
        }


    }
}

альтернативно, вы можете позволить C # делать это автоматически, используя следующий код:

public class data
{
    public string SearchAirport
    {
        get;
        set;
    }
}
1 голос
/ 04 января 2010

Я бы предложил шаблон Service Locator, но, боюсь, он слишком сложен для того, чего хочет добиться плакат с вопросом.

На всякий случай может быть полезно позже: Шаблон локатора службы

1 голос
/ 04 января 2010

Вы получаете доступ к searchAirport статически, а сам метод не является статичным.

Вы можете добавить ключевое слово static в сигнатуру метода SearchAirport или создать объект data и затем вызвать SearchAirport для этого объекта.

0 голосов
/ 04 января 2010

данные d = новые данные ();

.... перед этими строками

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...