다니고 있는 회사에서 Socket을 자주 사용한다. 매일 다른 블로거님들의 자료를 긁어오다가 나도 공부차원에서 계속해서 반복했던 패턴들을 정리하고자 한다.
나는 WPF에 UDP 통신이 가능한 프로그램을 만들고자 한다.
이름은 MySocketProjcet 로 지어준다.
틀만 먼저 만들어준다.
아직은 배우는 단계라 Margin 을 막써서 최대한 간결하게 UI를 구상했다.
데이터를 받는 부분은 색감을 줘서 구분을 지어줬다.
IP와 PORT를 기입한 후 Socket Setting 버튼을 눌러 UDP 소켓을 설정해줄 예정이다.
<Window x:Class="MySocketProject.MainWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:local="clr-namespace:MySocketProject"
mc:Ignorable="d"
Title="MainWindow" Height="350" Width="400">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="40"/>
<RowDefinition Height="40"/>
<RowDefinition Height="*"/>
<RowDefinition Height="40"/>
</Grid.RowDefinitions>
<Grid Grid.Row="0">
<TextBlock Text="IP" Height="20" TextAlignment="Left" Margin="13,10,338,10"/>
<TextBox Text="127.0.0.1" Width="100" Height="20" Margin="77,10,223,10"/>
</Grid>
<Grid Grid.Row="1">
<TextBlock Text="PORT" x:Name="IP_Tb" Height="20" TextAlignment="Left" Margin="13,10,338,10"/>
<TextBox Text="5000" x:Name="PORT_Tb" Width="100" Height="20" Margin="77,10,223,10" />
<Button Content="Socket Setting" Width="100" Height="20" Margin="296,10,4,10"/>
</Grid>
<Grid Grid.Row="2">
<TextBox x:Name="ReceiveData" Background="#FFF9F2E7"/>
</Grid>
<Grid Grid.Row="3">
<TextBox Text="Send Message Data" Height="20" Margin="10,10,114,10"/>
<Button Content="Send" x:Name="SendBtn" Width="100" Height="20" VerticalAlignment="Center" HorizontalAlignment="Left" Margin="293,0,0,0"/>
</Grid>
</Grid>
</Window>
해당 디자인의 xaml 코드이다.
다음장에는 Socket 클래스를 만들 예정이다.