Calvin
Calvin

Reputation: 641

how to make uniformgrid vertically

I'm using UniformGrid and it's making the items display horizontally. Is there a way to make it display vertically?

<ListView.ItemsPanel>
    <ItemsPanelTemplate>
        <UniformGrid Columns="3" />
    </ItemsPanelTemplate>
</ListView.ItemsPanel>

Any help would be greatly appreciated.

Upvotes: 18

Views: 13493

Answers (3)

Alder
Alder

Reputation: 1

I'm a bit latER to the party, but for posterity's sake:

I'm just starting out with xaml and came across this problem today. For simplicity's sake, I ended up wrapping single-column UniformGrids in a multi-column, single-row UniformGrid:

<UniformGrid Columns="3">
    <UniformGrid Columns="1">
        <!--multiple child elements-->
    </UniformGrid>
    <UniformGrid Columns="1">
        <!--multiple child elements-->
    </UniformGrid>
    <UniformGrid Columns="1">
        <!--multiple child elements-->
    </UniformGrid>
</UniformGrid>

Upvotes: -1

Ralt
Ralt

Reputation: 2124

I'm a bit late to the party - but for anyone else searching for a solution, the following works.

<UniformGrid Columns="1" />

Upvotes: 9

sa_ddam213
sa_ddam213

Reputation: 43596

The WPF UniformGrid layout is horizontal only, e.g.:

1 2 3
4 5 6
7 8 9

Perhaps you could use a WrapPanel instead and just set the ItemHeight and ItemWidth to your desired grid size and set the Orientation to Orientation.Vertical.

Or you could create a derived UniformGrid to handle Orientation, there is a good example on MSDN.

This one will display:

1 4 7
2 5 8
3 6 9

Is this what you mean?

Upvotes: 20

Related Questions