2009-10-18 49 views
9

Vì vậy, tôi tạo ra các cột tự động cho một bố cục Grid trong Silverlight (V3.0, C#):Làm cách nào để đặt bố cục Lưới Silverlight Chiều rộng cộtDefID thành "*" theo chương trình?

LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition()); 

và bạn có thể cụ thể mà độ rộng của cột được "tự động" với

LayoutRoot.ColumnDefinitions.Add(new ColumnDefinition() { Width = GridLength.Auto }); 

Nhưng làm thế nào để bạn đặt nó thành "*" (chia sẻ với với các cột khác)?

Tôi biết bạn có thể đặt điều này trong XAML, nhưng làm cách nào bạn thực hiện điều đó trong mã?

Trả lời

20

Vượt qua một GridLength với một GridUnitType của Sao:

new ColumnDefinition { Width = new GridLength(1, GridUnitType.Star) }; 

Bonus là kỹ thuật này cũng hỗ trợ khoảng cách tỷ lệ thuận với ví dụ tương đương với XAML 2 *, 3 *, vv

Các vấn đề liên quan