2009-07-25 38 views
5

Tôi đang sử dụng một trong các chủ đề trong CodePlex và tôi muốn thêm một số sửa đổi về kiểu nhưng không thay đổi mã của chúng. Làm cách nào tôi có thể kế thừa kiểu chủ đề?"kế thừa" kiểu chủ đề trong wpf

Trả lời

12
 
<Style x:Key="Style1"> 
    <Setter Property="Control.Background" Value="Yellow"/> 
</Style> 

<Style x:Key="Style2" BasedOn="{StaticResource Style1}"> 
    <Setter Property="Control.Foreground" Value="Blue"/> 
</Style> 

MSDN tham khảo: http://msdn.microsoft.com/en-us/library/system.windows.style.basedon.aspx

Một ví dụ khác (căn cứ một phong cách trên một phong cách không có chìa khóa rõ ràng):

 
<Style x:Key="Style3" BasedOn="{StaticResource {x:Type ComboBox}}"> 
    <Setter Property="Control.Foreground" Value="Blue"/> 
</Style> 

Chỉ cần nạp từ điển tài nguyên mở rộng sau khi từ điển tài nguyên cơ sở thông qua XAML hoặc mã.

+0

và tôi có thể làm gì nếu kiểu cơ sở không có khóa? như trong chủ đề ?????? –

+9

Tất cả kiểu đều có khóa, các khóa là một ID, ví dụ: "Style1" hoặc loại Kiểm soát ngầm hoặc rõ ràng, ví dụ: "BasedOn =" {StaticResource {x: Type ComboBox}} " –

+0

+1, Đây là giải pháp –

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