0

私はオブジェクト指向プログラミングに慣れていないので、これは陳腐な質問のように思えるかもしれませんが、私は Windows Phone アプリケーションに取り組んでおり、プログラム内の _socket オブジェクトに興味があります。

以下で使用しているコードは機能し、このバイト配列を BlueTooth 経由で UART 経由でマイクロプロセッサに送信しています。

private async void ConnectToDevice(PeerInformation peer)
{
        if (_socket != null)
        {
            _socket.Dispose();
        }

        try
        {
            _socket = new StreamSocket();
            await _socket.ConnectAsync(peer.HostName, "{00001101-0000-1000-8000-00805F9B34FB}");

            byte[] bytesToSend = new byte[5] {8,2,3,14,5} ;
            var buffer = GenerateData(bytesToSend);

            await _socket.OutputStream.WriteAsync(buffer);

            MessageBox.Show("Connected to Bluetooth!");
        }
        catch (Exception ex)
        {
            MessageBox.Show(ex.Message);

            _socket.Dispose();
            _socket = null;
        }
    }

私がやりたいことは、上から _socket オブジェクトを取得し、アプリケーションの別のページで使用することです。

基本的に、このメソッドは MainPage で実行されており、作成した "ConfigurationPage" の StreamSocket の入力済みフィールドにアクセスしたいと考えています。

新しいオブジェクトを作成せずに、このオブジェクトを ConfigurationPage に取得するにはどうすればよいですか?

4

1 に答える 1

0

1 つの方法は、App.xaml.cs の静的プロパティで宣言することです。

public static StreamSocket Socket { get; set; }

次に、アプリケーションのどこからでもアクセスできます。

await App.Socket.ConnectAsync(peer.HostName, "{00001101-0000-1000-8000-00805F9B34FB}");
于 2013-11-13T17:05:52.287 に答える