2010-01-04 34 views
0

我正在處理我的第一個C#程序,並遇到了一堵磚牆。我希望能夠在同一個應用程序中設置和獲取不同形式的變量。如何跨多種表單使用相同的信息

我創建了一個名爲「數據」類,它包含以下內容:

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' ......」

錯誤

+0

我很想指出UnityContainer,依賴注入和控制反轉,但是這可能不是你關心的那一刻:) – 2010-01-04 20:43:37

回答

1

您正在靜態訪問searchAirport,並且該方法本身不是靜態的。

您可以將static關鍵字添加到SearchAirport方法簽名或創建一個data對象,然後在該對象上調用SearchAirport

0

數據d =新數據();

....這些線路

2

好之前,你需要聲明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; 
    } 
} 
+2

如果你真的很懶,你會輸入'prop',然後輸入2個選項卡。 – 2010-01-04 20:48:10

+1

如果你真的很懶,你會輸入prop,然後輸入* single *標籤(謝謝R#) – 2010-01-04 22:53:59

+0

如果你真的真的很懶,那麼你可以使用蝴蝶。 – 2010-01-05 00:30:16

1

我會建議一個Service Locator模式,但恐怕對於問題海報想要實現的方式來說太複雜了。

以防萬一這可能是有用的後面:Service Locator pattern

相關問題