Придется ли копировать этот макет в XAML, какие элементы управления вы бы использовали? - PullRequest
0 голосов
/ 11 ноября 2011

Я только начинаю выяснять, что лучше всего подходит для отображения макета / данных в XAML (WPF), и пока не знаю, какие элементы управления и т. Д. Работают в определенных ситуациях.

  • Ничего не нужно сортировать или фильтровать, столбцы и строки статичны
  • Будет ли лучше использовать сетку данных или некоторую комбинацию стековых панелей / списков?
  • Я вижу "хитрые" части какПри добавлении подзаголовка с «перекосом» и разделительных линий между некоторыми столбцами, какие будут предложения по их добавлению?

Layout

1 Ответ

2 голосов
/ 11 ноября 2011

Я бы на самом деле использовал стандартную сетку (не DataGrid).Вначале это кажется неудобным, но после того, как вы научитесь использовать его, вы будете использовать его везде!:)

Вот пример для отображения ваших данных (они не полны, но вы видите смысл):

<Grid x:Name="grdData" Background="White">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="Auto" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
            <ColumnDefinition Width="Auto" MinWidth="50" />
        </Grid.ColumnDefinitions>
        <Grid.RowDefinitions>
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />
            <RowDefinition Height="Auto" />

        </Grid.RowDefinitions>


        <TextBlock FontWeight="Bold" FontSize="14" Padding="10">Annualized Statistics</TextBlock>

        <TextBlock Grid.Row="1" Grid.Column="1">1Yr</TextBlock>
        <TextBlock Grid.Row="1" Grid.Column="2">2Yr</TextBlock>
        <TextBlock Grid.Row="1" Grid.Column="3">3Yr</TextBlock>
        <TextBlock Grid.Row="1" Grid.Column="4">4Yr</TextBlock>
        <TextBlock Grid.Row="1" Grid.Column="5">5Yr</TextBlock>

        <TextBlock Grid.Row="1" Grid.Column="6">1st Half</TextBlock>
        <TextBlock Grid.Row="1" Grid.Column="7">2nd Half</TextBlock>

        <TextBlock Grid.Row="1" Grid.Column="8">Incept</TextBlock>



        <TextBlock Grid.Row="2" Grid.Column="0">Return</TextBlock>

        <TextBlock Grid.Row="2" Grid.Column="1">(4.81)</TextBlock>
        <TextBlock Grid.Row="2" Grid.Column="2">(2.25)</TextBlock>
        <TextBlock Grid.Row="2" Grid.Column="3">1.01</TextBlock>
        <TextBlock Grid.Row="2" Grid.Column="4">4.30</TextBlock>
        <TextBlock Grid.Row="2" Grid.Column="5">(0.61)</TextBlock>

        <TextBlock Grid.Row="2" Grid.Column="6">(18.75)</TextBlock>
        <TextBlock Grid.Row="2" Grid.Column="7">5.06</TextBlock>

        <TextBlock Grid.Row="2" Grid.Column="8">(7.48)</TextBlock>

        <Rectangle Grid.Column="5" Grid.Row="1" Grid.RowSpan="5" Fill="Black" Width="1" HorizontalAlignment="Right" />
        <Rectangle Grid.Column="7" Grid.Row="1" Grid.RowSpan="5" Fill="Black" Width="1" HorizontalAlignment="Right" />

    </Grid>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...