Trả lời

5

Không có cách tích hợp để đảo ngược màu của hình ảnh trong khung. Thay vào đó, vì bạn phải tạo cả hai phiên bản của hình ảnh tại thời điểm thiết kế/xây dựng và sau đó chọn phiên bản nào để hiển thị từ mã của bạn bằng cách phát hiện Theme Visibility and Opacity.

+0

Ngày nay, ApplicationBar cho Windows Phone làm điều này ngược màu trên hình ảnh png. Tôi cũng muốn biết. 'mã ' – Dherik

4

Tôi phải thêm rằng những gì tôi đã làm cuối cùng là một sự tiếp nối của những gì Matt đã viết.

  • tạo ra hai hình ảnh khác nhau mà có các phiên bản khác nhau của hình ảnh (tối và ánh sáng) và đặt chúng ở vị trí chính xác cùng
  • thiết lập tầm nhìn của họ dựa trên các nguồn lực chủ đề

vẻ đang như thế này:

<Image Height="30" HorizontalAlignment="Center" Margin="0,0,0,220" Name="imgDark" Stretch="Fill" Visibility="{StaticResource PhoneLightThemeVisibility}" VerticalAlignment="Center" Width="30" Source="/MyApplication;component/imageDarkTheme.png" /> 
<Image Height="30" HorizontalAlignment="Center" Margin="0,0,0,220" Name="imgLoading" Stretch="Fill" Visibility="{StaticResource PhoneDarkThemeVisibility}" VerticalAlignment="Center" Width="30" Source="/MyApplication;component/imageLightTheme.png" /> 
4

Câu hỏi này hiện là 1,5 tuổi. Nhưng here là cách dễ nhất để làm những gì bạn muốn. Ví dụ được đưa ra có rất đơn giản như

<Button> 
    <Image Stretch="None" Source="{Binding Converter={StaticResource ThemedImageConverter}, ConverterParameter={StaticResource PhoneBackgroundColor} }" 
      DataContext="/WP7SampleProject4;component/Images/{0}/appbar.feature.camera.rest.png" /> 
</Button>