(연관된 글이 1개 있습니다.)
라즈베리파이 GPIO를 컨트롤 하는 프로그램을 작성했더니 신호에 따라 컨트롤은 잘 되었습니다.
하지만 받은 값을 textBox에 전달하려 하는데 잘 안됩니다.
namespace echo_Server
{
/// <summary>
/// </summary>
public sealed partial class MainPage : Page
{
public MainPage()
{
this.InitializeComponent();
acho_sever();
achoclient();
}
private async void acho_sever()
{
try
{
//Create a StreamSocketListener to start listening for TCP connections.
Windows.Networking.Sockets.StreamSocketListener socketListener = new Windows.Networking.Sockets.StreamSocketListener();
//Hook up an event handler to call when connections are received.
socketListener.ConnectionReceived += SocketListener_ConnectionReceived;
//Start listening for incoming TCP connections on the specified port. You can specify any port that's not currently in use.
await socketListener.BindServiceNameAsync("1337");
}
catch (Exception e)
{
//Handle exception.
}
}
private async void SocketListener_ConnectionReceived(Windows.Networking.Sockets.StreamSocketListener sender,
Windows.Networking.Sockets.StreamSocketListenerConnectionReceivedEventArgs args)
{
//Read line from the remote client.
Stream inStream = args.Socket.InputStream.AsStreamForRead();
StreamReader reader = new StreamReader(inStream);
string request = await reader.ReadLineAsync();
//try //일단 익셉션처리를 해보았습니다. 익셉션 에러는 안났는데요
//{
// textBox.Text = request; //여기도
//}
//catch (COMException)
//{
// textBox.Text = request; //또 여기에 넣어봐도 텍스트 박스가 반응을 안합니다.
//}
//Send the line back to the remote client.
Stream outStream = args.Socket.OutputStream.AsStreamForWrite();
StreamWriter writer = new StreamWriter(outStream);
//리턴값으로 돌려서 값을 반환하고 싶지만 void라 할 수 ㅇ없었습니다. 이런저런 시도를 해봤지만 실패했습니다.
어떻게 해서 출력하면 좋을까요?
await writer.WriteLineAsync(request);
await writer.FlushAsync();
}
[연관 글]
[최초 등록일: ]
[최종 수정일: 12/4/2015]