2012-06-22 13 views
7

Tôi muốn có thể căn chỉnh các nút trong bảng ngăn xếp trung tâm. Số lượng nút là động và được tạo khi điều khiển được tải. Ví dụ: nếu nút 1 được tạo thì nút này sẽ được đặt ở giữa điều khiển. Nếu 5 nút được hiển thị thì tất cả 5 nút sẽ được căn chỉnh theo chiều ngang 2 bên cạnh nhau nhưng nằm ở giữa điều khiển.Bảng điều khiển ngăn xếp WPF Căn giữa

Một cách tiếp cận khác sẽ là điều khiển tự động thay đổi kích thước dựa trên nội dung của nó để nó rộng hơn với nhiều nút hơn và sau đó điều chỉnh người dùng theo chiều ngang trên trang nhưng tôi không biết cách tiếp cận giải pháp?

Có ai có ý tưởng nào không?

+3

Câu hỏi bố cục hoạt động tốt nhất với ví dụ về Xaml hiện có :) –

Trả lời

16

Điều này sẽ hiệu quả. Đặt Horizontal Alignment trong bảng stack, và chắc chắn rằng khi bạn đang tự động thêm nút của bạn, bạn cung cấp cho họ mỗi giá trị thuộc tính margin để cung cấp cho họ một số không gian từ mỗi khác. ngang với nhau, trung tâm để kiểm soát.

<StackPanel Orientation="Horizontal" HorizontalAlignment="Center" Margin="20"> 
     <Button Margin="10">one</Button> 
     <Button Margin="10">two</Button> 
     <Button Margin="10">three</Button> 
     <Button Margin="10">four</Button> 
     <Button Margin="10">five</Button>    
    </StackPanel> 
7

Bạn chỉ có thể thiết lập sau đây trong XAML

StackPanel.HorizontalAlignment = HorizontalAlignment.Center;

hoặc

HorizontalAlignment="Center" (như GrayFox374 đề cập)

Đây là một mẫu MSDN giải thích hoạt động liên kết khác nhau, có chính xác những gì bạn cần tôi nghĩ - How to: Horizontally or Vertically Align Content in a StackPanel