Tôi có các hộp nhóm hoạt động như bộ tăng tốc trong ứng dụng của mình. Khi tôi cần phải colapse một groupbox tôi thiết lập chiều cao của nó bằng 0. khi tôi cần phải mở rộng nó, tôi thiết lập chiều cao của nó bằng tự động (double.Nan) là nó posible để làm điều này với một storyboard. Làm thế nào tôi có thể biết trước chiều cao tự động. Cụm từ biểu thức không cho phép tôi hoạt ảnh tự động.Animate chiều cao của hộp nhóm từ 0 đến tự động
Trả lời
Bạn có thể sử dụng ScaleTransform cho điều này
<GroupBox Header="GroupBox">
<GroupBox.RenderTransform>
<ScaleTransform ScaleY="1"/>
</GroupBox.RenderTransform>
</GroupBox>
Khi sụp đổ một GroupBox thiết ScaleTransform.ScaleX để 0. Và khi expand thiết lập để 1.
Như tôi ghét chuyển đổi quy mô vì Tôi thấy nó xấu xí, tôi tìm một giải pháp khác. Vâng, tôi biết nó là một bài cũ và nhiều cách giải quyết tồn tại, nhưng tôi là khá đơn giản, và tôi đã không đọc nó ở nơi khác ngay cả khi có ai đó tìm thấy nó cho chắc chắn. Tôi có thể đọc nó ở đâu đó.
Thay vì hiệu ứng động chiều cao từ X để Auto
(đó là bất khả thi), bạn có thể cho chiều cao Auto
và animate MaxHeight
tài sản:
<MyControl x:Name="ctrlAutoHeight" Height="Auto">
<MyControl.Triggers>
<EventTrigger RoutedEvent="myRoutedEvent">
<BeginStoryboard>
<Storyboard>
<DoubleAnimation Storyboard.TargetName="ctrlAutoHeight" Storyboard.TargetProperty="MaxHeight"
From="0.0" To="{Binding ElementName=ParentControl, Path=ActualHeight}"
Duration="0:0:1" AutoReverse="False"/>
</Storyboard>
</BeginStoryboard>
</EventTrigger>
</MyControl.Triggers>
</MyControl>
Thực sự thông minh và hoạt động hoàn hảo. –
Tôi chưa thử, nhưng tôi không thấy nó sẽ không hoạt động như thế nào. Khá thông minh. – Kilazur
Tôi biết bây giờ: tôi không biết điều kiện chính xác, nhưng tôi nhận được một InvalidOperationException khi tôi cố gắng để ràng buộc 'To' để MaxHeight cửa sổ của tôi, hoặc để lưới của nó. – Kilazur
- 1. Chiều cao động của jQuery để tự động
- 2. WPF: Chiều cao động GroupBox
- 3. Animate UITableViewCell chiều cao trên lựa chọn
- 4. Chiều cao con div 100% chiều cao tự động của phụ huynh
- 5. DialogFragment đặt chiều cao của Hộp thoại
- 6. Chiều cao động của UIWebView với bố cục tự động
- 7. Tự động thay đổi kích thước chiều rộng và chiều cao bằng hộp thoại jQuery
- 8. jQuery ~ Cách kích hoạt hộp chiều rộng và chiều cao từ trung tâm trung tâm
- 9. DataGridView Chiều cao hàng Tự động hóa
- 10. Chiều cao tự động GWT DataGrid
- 11. Tự động đặt chiều cao ViewPager
- 12. Chiều cao động của iframe
- 13. jQuery và Colorbox: Cách tự động đặt chiều cao và chiều rộng của hộp màu khung nội tuyến
- 14. Có gì giống như chiều cao dòng tự động không?
- 15. Animate thay đổi chiều cao trên Bootstrap's Carousel (v2.3.2)
- 16. Animate hộp thoại giao diện người dùng jQuery tự động thay đổi kích thước
- 17. hộp văn bản nhiều dòng tự động điều chỉnh chiều cao theo số lượng văn bản
- 18. Animate thay đổi chiều cao của div khi nội dung của nó thay đổi
- 19. Làm cách nào để đặt Chiều cao tự động trên Hộp màu?
- 20. jquery animate để min-height hoặc tự động
- 21. chiều cao đầu vào hộp văn bản
- 22. Đặt chiều cao của hộp chọn nhiều lựa chọn
- 23. Kéo div lồng nhau lên chiều cao của div vùng chứa khi vùng chứa có chiều cao: tự động?
- 24. Chiều cao tự động bằng MAX (chiều cao nhiều lần xem)
- 25. Thay đổi chiều cao UITableviewCell tự động trong iPhone?
- 26. Cách tự động kích thước chiều cao của nhãn nhưng không phải chiều rộng
- 27. Tự động thay đổi chiều rộng hoặc chiều cao của linearlayout trên Android
- 28. Tự động đặt chiều rộng và chiều cao của TextView trong Android
- 29. Chiều cao CSS: tự động không hoạt động với trình bao bọc của tôi div
- 30. Chiều cao của div cha mẹ bằng 0 ngay cả khi nó có con với chiều cao hữu hạn
tôi thực sự cần phải làm động từ độ cao cụ thể để ô tô. Do đó trước khi chạy animation, tôi sẽ tạo một vòng lặp sẽ kiểm tra để xem tỉ lệ nào tôi sẽ nhận được chiều cao gần đúng là 50 (thử với 0,01 rồi .02 vv cho đến khi nó đóng) và liên kết biến đó với bảng phân cảnh của tôi. Cảm ơn Rikker –