2012-03-06 11 views
1

こんにちは私は、Windows Phone 7のテキストブロックで別のページに表示する変数を使用する必要があります。第2ページで変数が宣言されていないという問題があります。 :公開変数wp7 mango

public static class MainPage : PhoneApplicationPage 
{ 
    string result;//var i wanna use at the all application pages 
    string status;//var i wanna use at the all application pages 
    string userId;//var i wanna use at the all application pages 
    string msg;//var i wanna use at the all application pages 

    WebClient client; 

    // Constructor 
    public MainPage() 
    { 
     InitializeComponent(); 

     client = new WebClient(); 
     client.DownloadStringCompleted += new DownloadStringCompletedEventHandler(client_DownloadStringCompleted); 
    } 
} 

///second page 
public partial class info : PhoneApplicationPage 
{ 
    public info() 
    { 
     InitializeComponent(); 
     textBlock1.Text = result.value(); 
    } 
} 

しかし、このコードは仕事の助けとなりますか?

答えて

3

が、このコードdosent作品

あなたの変数は、プライベートであり、その範囲はMainPageクラスに制限されているため。

公開するには、publicというキーワードを追加する必要があります。

よりよい:あなたの代わりにプロパティを使用する必要があります。

public string Result { get; set; } 

また、あなたがグローバル変数を書き込むことはできません。 C#は、オブジェクト指向プログラミング言語であるとして、あなたはあなたの特性にアクセスするために、あなたのMainPageクラスのインスタンスを使用する必要があります:

MainPage myPage = new MainPage(); 
.... 
textBlock1.Text = myPage.Result; 

もう一つ:あなたは、変数/プロパティを使用している、いません機能。したがって、result.value();を書くことはできません。代わりにresult.value;を使用してください。

プロパティについてはthis MSDN articleをご覧ください。

+0

OKありがとうの多くを公共のキーワードを追加する必要があります..しかし、私は、結果の値は情報ページでテキストブロックに表示されますdoes notの別の問題を発見しました。..私はWebサービスから取得したいと思います。私はメインページクラスで宣言しました。これが問題なのでしょうか? –

+0

@ワラ・ナーラス・ハムは、事柄を明確にし、あなたの問題が変数の範囲とは異なるものに関連しているため、新しい問題について別の質問をすることをお勧めします。また、Webサービスコールに関連するすべてのコードを投稿する必要があります。 – ken2k

0

は、私の知る限りでは、あなたはメインページクラスのスコープ外で結果変数を宣言するか、

関連する問題