这似乎是一个陈腐的问题,因为我是面向对象编程的新手,但我正在开发一个Windows Phone应用程序,我很好奇程序中的_socket对象。
我在下面使用的代码工作,我通过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?
答案 0 :(得分:0)
一种方法是在App.xaml.cs中的静态属性中声明它:
public static StreamSocket Socket { get; set; }
然后您可以从应用程序的任何位置访问它:
await App.Socket.ConnectAsync(peer.HostName, "{00001101-0000-1000-8000-00805F9B34FB}");