WPF에 Json데이타 표시(정보분배 - No Loop,Loop Case)
case1) 정보분배 - No Loop Case.
case2) 정보분배 - Loop Case.
<Window x:Class="sampleNM.MainWindow" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="REDIS Real Time BLPOP" Height="800" Width="1200" KeyDown="Window_KeyDown" WindowStartupLocation="Manual" Left="10" Top="10"> <Grid> <!-- Define Rows for layout --> <Grid.RowDefinitions> <RowDefinition Height="0.1*" /> <!-- 10% of available space --> <RowDefinition Height="0.4*" /> <!-- 50% of available space --> <RowDefinition Height="0.2*" /> <!-- 40% of available space --> <RowDefinition Height="0.3*" /> <!-- 40% of available space --> </Grid.RowDefinitions> <!-- Container for Time data --> <ScrollViewer Grid.Row="0" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" Margin="10"> <Border BorderBrush="Black" BorderThickness="1" Margin="5"> <StackPanel Orientation="Vertical"> <TextBlock Text="[Time Information]" FontWeight="Bold" FontSize="12" Margin="0,0,0,0"/> <StackPanel x:Name="TimeStackPanel" Orientation="Vertical"> <!-- Time data will be loaded here --> </StackPanel> </StackPanel> </Border> </ScrollViewer> <!-- Container for JSON data --> <ScrollViewer Grid.Row="1" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" Margin="10"> <Border BorderBrush="Black" BorderThickness="1" Margin="5"> <StackPanel Orientation="Vertical"> <TextBlock Text="[REDIS JSON Information-NOT.LOOP.DATA]" FontWeight="Bold" FontSize="12" Margin="0,0,0,0"/> <StackPanel x:Name="DataStackPanel" Orientation="Vertical"> <!-- JSON data will be loaded here --> </StackPanel> </StackPanel> </Border> </ScrollViewer> <!-- Container for complex JSON data --> <ScrollViewer Grid.Row="2" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" Margin="10"> <Border BorderBrush="Black" BorderThickness="1" Margin="5"> <StackPanel Orientation="Vertical"> <TextBlock Text="[REDIS COMPLEX.JSON Information-SECURITIES.TRADE]" FontWeight="Bold" FontSize="12" Margin="0,0,0,0"/> <DataGrid x:Name="DataGrid" AutoGenerateColumns="False" Margin="10"> <DataGrid.Columns> <DataGridTextColumn Header="DataClass" Binding="{Binding DataClass}" /> <DataGridTextColumn Header="InfoMarketClass" Binding="{Binding InfoMarketClass}" /> <DataGridTextColumn Header="StockCode" Binding="{Binding StockCode}" /> <DataGridTextColumn Header="SerialNo" Binding="{Binding SerialNo}" /> <DataGridTextColumn Header="AskSecuritiesTradeNumber" Binding="{Binding AskSecuritiesTradeNumber}" /> <DataGridTextColumn Header="AskTradeVolume" Binding="{Binding AskTradeVolume}" /> <DataGridTextColumn Header="AskTradeAmount" Binding="{Binding AskTradeAmount}" /> <DataGridTextColumn Header="BidSecuritiesTradeNumber" Binding="{Binding BidSecuritiesTradeNumber}" /> <DataGridTextColumn Header="BidTradeVolume" Binding="{Binding BidTradeVolume}" /> <DataGridTextColumn Header="BidTradeAmount" Binding="{Binding BidTradeAmount}" /> <DataGridTextColumn Header="EndOfText" Binding="{Binding EndOfText}" /> </DataGrid.Columns> </DataGrid> </StackPanel> </Border> </ScrollViewer> <!-- Container for complex JSON data --> <ScrollViewer Grid.Row="3" VerticalScrollBarVisibility="Auto" HorizontalScrollBarVisibility="Disabled" Margin="10"> <Border BorderBrush="Black" BorderThickness="1" Margin="5"> <StackPanel Orientation="Vertical"> <TextBlock Text="[REDIS COMPLEX.JSON Information-QUOTE.10]" FontWeight="Bold" FontSize="12" Margin="0,0,0,0"/> <DataGrid x:Name="QuoteDataGrid" AutoGenerateColumns="False" Margin="10"> <DataGrid.Columns> <DataGridTextColumn Header="DataClass" Binding="{Binding DataClass}" /> <DataGridTextColumn Header="InfoMarketClass" Binding="{Binding InfoMarketClass}" /> <DataGridTextColumn Header="DistributeStockIndex" Binding="{Binding DistributeStockIndex}" /> <DataGridTextColumn Header="BoardID" Binding="{Binding BoardID}" /> <DataGridTextColumn Header="SessionID" Binding="{Binding SessionID}" /> <DataGridTextColumn Header="StockCode" Binding="{Binding StockCode}" /> <DataGridTextColumn Header="StockSeq" Binding="{Binding StockSeq}" /> <DataGridTextColumn Header="TradingProcessingTime" Binding="{Binding TradingProcessingTime}" /> <DataGridTextColumn Header="AskQuote" Binding="{Binding AskQuote}" /> <DataGridTextColumn Header="BidQuote" Binding="{Binding BidQuote}" /> <DataGridTextColumn Header="AskQuoteVolume" Binding="{Binding AskQuoteVolume}" /> <DataGridTextColumn Header="BidQuoteVolume" Binding="{Binding BidQuoteVolume}" /> <DataGridTextColumn Header="TotalAskQuoteRemainder" Binding="{Binding TotalAskQuoteRemainder}" /> <DataGridTextColumn Header="TotalBidQuoteRemainder" Binding="{Binding TotalBidQuoteRemainder}" /> <DataGridTextColumn Header="EstimatedTradePrice" Binding="{Binding EstimatedTradePrice}" /> <DataGridTextColumn Header="EstimatedTradeVolume" Binding="{Binding EstimatedTradeVolume}" /> <DataGridTextColumn Header="EndText" Binding="{Binding EndText}" /> </DataGrid.Columns> </DataGrid> </StackPanel> </Border> </ScrollViewer> </Grid> </Window> |