์๋
ํ์ธ์ Datagrid์ ๋ด๊ฐ ์ํ๋ ๋ฐ์ดํฐ๋ฅผ ๋์ ์ผ๋ก ๋ฟ๋ฆฌ๋๊ฒ ๊น์ง๋ ํ๋๋ฐ์,
ํด๋น ๋ฐ์ดํฐ๊ฐ ๋ง์์ง๋ฉด ์คํฌ๋กค ๋ฌดํ์ ํ๋๊ฒ๋ ๊ทธ๋ ๊ณ ํด์ ํ์ด์ง ์ฒ๋ฆฌ๋ฅผ ํ๋ ค๋๋ฐ
๋ญ๊ฐ ์ฐพ์๋ด๋ ์ด๊ฑฐ๋ค ์ถ์ ๋ด์ฉ์ด ์์ด์ ์ง๋ฌธ์ฌ๋ ค๋ด
๋๋ค.
datagrid์ ๋ฟ๋ฆด ๋ฐ์ดํฐ๋ ๋ค์๊ณผ ๊ฐ์ด ์ ์ธํ์ต๋๋ค.
ObservableCollection<ReportDataSource> datas = new ObservableCollection<ReportDataSource>();
ReportDataSource ํด๋์ค๋ ์๋์ ๊ฐ์ต๋๋ค.
public class ReportDataSource
{
public string SubId { get; set; }
public string CTag { get; set; }
public string AddTag { get; set; }
public int ClickCount { get; set; }
public int BuyCount { get; set; }
public int TotalAmount { get; set; }
public int Profit { get; set; }
public double ClickPerProfit { get; set; }
public double ConversionRate { get; set; }
}
DataGrid๋ ์ด๋ ๊ฒ ๋ง๋ค์ด ๋จ์ต๋๋ค.
<DataGrid Grid.Row="3" Margin="-10,10,10,0" Style="{DynamicResource DataGridStyle1}" CellStyle="{DynamicResource DataGridCellStyle1}" ColumnHeaderStyle="{DynamicResource DataGridColumnHeaderStyle1}" RowStyle="{DynamicResource DataGridRowStyle1}" x:Name="reportDataGrid">
<DataGrid.Columns>
<DataGridCheckBoxColumn CanUserResize="False" Width="auto" ElementStyle="{StaticResource CheckBoxStyle1}" >
<DataGridCheckBoxColumn.HeaderTemplate>
<DataTemplate>
<CheckBox/>
</DataTemplate>
</DataGridCheckBoxColumn.HeaderTemplate>
</DataGridCheckBoxColumn>
<DataGridTextColumn Header="์ฑ๋ID" IsReadOnly="True" Width="*" Binding="{Binding SubId}"/>
<DataGridTextColumn Header="ํ์ด์ง ํค" IsReadOnly="False" Width="*" Binding="{Binding CTag}"/>
<DataGridTextColumn Header="ํ์ด์ง ํ์
" IsReadOnly="True" Width="*" Binding="{Binding AddTag}"/>
<DataGridTextColumn Header="ํด๋ฆญ์" IsReadOnly="True" Width="*" TextBlock.TextAlignment="Center" Binding="{Binding ClickCount}"/>
<DataGridTextColumn Header="๊ตฌ๋งค๊ฑด์" IsReadOnly="True" Width="*" TextBlock.TextAlignment="Center" Binding="{Binding BuyCount}"/>
<DataGridTextColumn Header="์ด ๊ตฌ๋งค๊ธ์ก" IsReadOnly="True" Width="*" TextBlock.TextAlignment="Center" Binding="{Binding TotalAmount}"/>
<DataGridTextColumn Header="์์ต" IsReadOnly="True" Width="*" TextBlock.TextAlignment="Center" Binding="{Binding Profit}"/>
<DataGridTextColumn Header="ํด๋ฆญ๋น ์์ต" IsReadOnly="True" Width="*" TextBlock.TextAlignment="Center" Binding="{Binding ClickPerProfit, StringFormat={}{0:0.##}}"/>
<DataGridTextColumn Header="์ ํ์จ" IsReadOnly="True" Width="*" TextBlock.TextAlignment="Center" Binding="{Binding ConversionRate, StringFormat={}{0:0.##}%}"/>
</DataGrid.Columns>
</DataGrid>
Paiging ๊ป๋ฐ๊ธฐ๋ ๋ง๋ค์ด๋ ๋จ์ต๋๋คโฆ
<Border Grid.Row="4" HorizontalAlignment="Right" BorderBrush="#dee4ec" BorderThickness="1"
CornerRadius="5" Padding="5" Background="White" Margin="0 10 10 10">
<StackPanel Orientation="Horizontal">
<Button Style="{StaticResource pagingButton}">
<Icon:PackIconMaterial Kind="ChevronLeft" Style="{StaticResource pagingButtonIcon}"/>
</Button>
<Rectangle Width="1" Fill="#dee4ec" Margin="3 7" />
<Button Style="{StaticResource pagingButton}" Content="1"/>
<Button Style="{StaticResource pagingButton}" Content="2" Background="#7950f2" Foreground="#ffffff"/>
<Button Style="{StaticResource pagingButton}" Content="3"/>
<TextBlock Text="..." Foreground="#6c7682" VerticalAlignment="Center" FontSize="15" Margin="10 0"/>
<Button Style="{StaticResource pagingButton}" Content="7"/>
<Button Style="{StaticResource pagingButton}" Content="8"/>
<Button Style="{StaticResource pagingButton}" Content="9"/>
<Rectangle Width="1" Fill="#dee4ec" Margin="3 7" />
<Button Style="{StaticResource pagingButton}">
<Icon:PackIconMaterial Kind="ChevronRight" Style="{StaticResource pagingButtonIcon}"/>
</Button>
</StackPanel>
</Border>
์ ํ์ด์ง๋ฒํผ ๋ง๋ค์ด๋์ ๊ณณ์ ํ์ด์ง๊ธฐ๋ฅ์ ๊ตฌํํ๊ณ ์ถ๊ณ , ํด๋น ๋ฐ์ดํฐ๊ทธ๋ฆฌ๋๊ฐ ๊ธฐ๋ณธ์ ์ผ๋ก ํค๋ํด๋ฆญ์ผ๋ก ์ ๋ ฌ์ด ๋๋๋ฐ ๊ทธ ๊ธฐ๋ฅ๋ ์ ์งํ๊ณ ์ถ์ต๋๋ค. ์ด๋ป๊ฒ ๋ง๋๋๊ฒ ์ข์ ์ง ์กฐ์ธ์ข ๊ตฌํด๋ด ๋๋คโฆ
์ฐธ๊ณ ๋ก ์๋ ์์์ ๋ณด๊ณ ๊ป๋ฐ๊ธฐ๋ฅผ ๊ตฌํํ์ต๋๋ค.