Vì vậy, tôi đang làm một GUI thingy với WPF trong C#. Có vẻ như sau:(wpf) Application.Current.Resources vs FindResource
Nó không được thực hiện ngay bây giờ. Hai hàng đó là nỗ lực của tôi trong việc tạo ra một loại bảng dữ liệu và chúng được mã hóa cứng trong XAML.
Bây giờ, tôi đang triển khai thêm chức năng nút quả mới trong C#. Tôi có phong cách sau đây trong XAML mà điều chỉnh những gì những hình ảnh nền của hàng nên xem xét như:
<Style x:Key="stretchImage" TargetType="{x:Type Image}">
<Setter Property="VerticalAlignment" Value="Stretch"/>
<Setter Property="HorizontalAlignment" Value="Stretch"/>
<Setter Property="Stretch" Value="Fill"/>
</Style>
Vì vậy, trong các mã, tôi tạo ra một hình ảnh cho mỗi cột, col0
, col1
và col2
, và nếu tôi sử dụng đoạn mã sau,
col0.Style = (Style)Application.Current.Resources["stretchImage"];
col1.Style = (Style)Application.Current.Resources["stretchImage"];
col2.Style = (Style)Application.Current.Resources["stretchImage"];
nó bổ sung thêm một hàng mới trông như thế này:
Như bạn có thể thấy, nó không hoàn toàn đúng ... Và kéo dài cửa sổ làm trầm trọng thêm vấn đề:
Nó dường như không được tôn trọng của phong cách "Stretch" bất động sản.
Nhưng sau đó, nếu tôi thay vì thay đổi mã tải phong cách của tôi để
col0.Style = (Style)FindResource("stretchImage");
col1.Style = (Style)FindResource("stretchImage");
col2.Style = (Style)FindResource("stretchImage");
Nó hoạt động đẹp:
(Một lần nữa, các ứng dụng không được hoàn thành, do đó, không lo lắng về điều đó), nhưng câu hỏi chính của tôi là: Sự khác biệt giữa Application.Current.Resources[]
và FindResource()
là gì? Tại sao người ta dường như bỏ qua một số thuộc tính trong khi cái kia thì không? Và làm thế nào, nếu có thể, tôi có thể nhận được Application.Current.Resources[]
để hoạt động bình thường không?
Đăng XAML có liên quan. Tất cả những gì tôi có thể thấy ở đây là một phong cách. –
Arrighty rồi: http://pastebin.com/05sKWMST – Pojo
Dude, tất cả XAML của bạn đều sai. Hãy để tôi sửa chữa nó và lấy lại cho bạn. –