Kh?c ph?c: R? r? b? nh? m?t trong m?t ?ng d?ng WPF khi m?t đ?i tư?ng brush là tham chi?u b?ng cách s? d?ng m?t DynamicResource

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 2651992 - Xem s?n ph?m mà bài này áp d?ng vào.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TRI?U CH?NG

H?y xem xét k?ch b?n sau đây:
  • B?n t?o ra m?t ?ng d?ng Microsoft Windows Presentation Foundation (WPF) các m?c tiêu c?a Microsoft.NET Framework 3.0 ho?c Microsoft.NET Framework 3.5.
  • ?ng d?ng xác đ?nh m?t đ?i tư?ng bàn ch?i và m?t đ?i tư?ng màu trong t?p tin XAML c?a ?ng d?ng.
    • S? d?ng các đ?i tư?ng bàn ch?i m?t DynamicResource đ? tham kh?o các đ?i tư?ng màu s?c. Ví d?,
      <Application.Resources>
      
      <Color x:Key="color1">#ff4050ff</Color>
      
      <SolidColorBrush x:Key="brush1" Color="{DynamicResource color1}"/>
      
      </Application.Resources>
    • Đ?i tư?ng brush đư?c tham chi?u như m?t DynamicResource trong m?t c?a s? WPF ho?c m?t đi?u khi?n ngư?i dùng hay m?t đ?i tư?ng. Ví d?,
      <Window x:Class="WpfApplication6.Window1"
      
      xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
      
      xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
      
      Title="Window1" Height="300" Width="300" Background="{DynamicResource brush1}">
      
      </Window>
  • B?n m? ho?c đóng các trư?ng h?p c?a c?a s? ho?c đi?u khi?n ngư?i dùng.

Trong trư?ng h?p này, trư?ng h?p b?t ngu?n t? rác th?i thu th?p (GC) heap và không đư?c phát hành. Theo th?i gian, m?t r? r? b? nh? x?y ra khi càng có nhi?u trư?ng h?p c?a c?a s? ho?c đi?u khi?n ngư?i dùng đư?c t?o ra. Cu?i cùng, b?n nh?n đư?c m?t System.OutOfMemoryException ngo?i l?.

Lưu ? V?n đ? này không x?y ra khi vi?c áp d?ng các m?c tiêu c?a Microsoft.NET Framework 4.

NGUYÊN NHÂN

V?n đ? này x?y ra b?i v? WPF th?i gian ch?y dây m?t x? l? s? ki?n n?i b? cho các ResourceReferenceExpressionđ?i tư?ng k?t h?p v?i các ngu?n tài nguyên c?a s? ho?c đi?u khi?n ngư?i dùng đang s? d?ng. Tham chi?u x? l? s? ki?n này không đư?c c?t b? khi c?a s? ho?c đi?u khi?n ngư?i dùng là đóng c?a và thi?t l?p đ? null.

GI?I PHÁP

Thông tin hotfix

M?t hotfix đư?c h? tr? là bây gi? có s?n t? Microsoft. Tuy nhiên, nó là nh?m s?a ch? v?n đ? bài vi?t này mô t?. Nó ch? áp d?ng cho h? th?ng đang g?p v?n đ? này c? th?.

Đ? gi?i quy?t v?n đ? này, liên h? v?i d?ch v? h? tr? khách hàng Microsoft đ? có đư?c các hotfix. Cho m?t danh sách đ?y đ? các d?ch v? h? tr? Microsoft khách hàng s? đi?n tho?i và thông tin v? chi phí h? tr?, h?y truy c?p trang web c?a Microsoft sau đây:
http://support.Microsoft.com/contactus/?WS=support
Lưu ? Trong trư?ng h?p đ?c bi?t, chi phí mà thư?ng ph?i gánh ch?u cho các cu?c g?i h? tr? có th? đư?c h?y b? n?u chuyên viên h? tr? Microsoft xác đ?nh r?ng m?t C?p Nh?t c? th? s? gi?i quy?t v?n đ? c?a b?n. Các chi phí h? tr? thông thư?ng s? áp d?ng đ? h? tr? thêm câu h?i và v?n đ? mà không đ? đi?u ki?n cho các C?p Nh?t c? th? trong câu h?i.

Đi?u ki?n tiên quy?t

Đ? áp d?ng hotfix này, b?n ph?i có Microsoft.NET Framework 3.5.1 cài trên máy tính đang ch?y m?t h? đi?u hành sau:
  • Windows 7 Service Pack 1 (SP1)
  • Windows Server 2008 R2 Service Pack 1 (SP1)


Kh?i đ?ng l?i yêu c?u

B?n ph?i kh?i đ?ng l?i máy tính sau khi b?n áp d?ng hotfix này n?u các t?p tin b? ?nh hư?ng đang đư?c s? d?ng.

Thông tin v? t?p

Các phiên b?n toàn c?u c?a hotfix này có các thu?c tính t?p (ho?c sau này t?p tin thu?c tính) mà đư?c li?t kê trong b?ng sau. Ngày tháng và th?i gian cho các t?p tin đư?c li?t kê trong gi? ph?i h?p qu?c t? (UTC). Khi b?n xem chi tieát taäp tin, nó đư?c chuy?n đ?i thành gi? c?c b?. Đ? bi?t s? khác nhau gi?a UTC và local time, s? d?ng các Múi gi? th? tab trong các Ngaøy giôø m?c trong b?ng đi?u khi?n.

Fho?c t?t c? các h? tr? x 86 d?a trên phiên b?n c?a Windows 7
Thu g?n b?ng nàyBung r?ng b?ng này
Tên t?pPhiên b?n t?pKích thư?c t?p tinNgày thángTh?i gianN?n t?ng
Presentationframework.dll3.0.6920.57385,283,84016-Dec-201101: 49x 86
Windowsbase.dll3.0.6920.57381,253,37616-Dec-201101: 49x 86
Presentationcore.dll3.0.6920.57384,218,88016-Dec-201101: 49x 86
Presentationframework.dll3.0.6920.57385,283,84016-Dec-201101: 49x 86
Presentationhostdll.dll3.0.6920.5738131,36016-Dec-201101: 49x 86
Presentationhost.exe4.0.40305.0296,22416-Dec-201101: 49x 86
Presentationhostproxy.dll4.0.31106.0100,13616-Dec-201101: 49x 86
Windowsbase.dll3.0.6920.57381,253,37616-Dec-201101: 49x 86

Fho?c t?t c? các h? tr? x 64 d?a trên các phiên b?n c?a Windows 7 và Windows Server 2008 r2
Thu g?n b?ng nàyBung r?ng b?ng này
Tên t?pPhiên b?n t?pKích thư?c t?p tinNgày thángTh?i gianN?n t?ng
Presentationcore.dll3.0.6920.57383,998,72016-Dec-201101: 42x 64
Presentationframework.dll3.0.6920.57384,640,76816-Dec-201101: 42x 86
Presentationhostdll.dll3.0.6920.5738172,32016-Dec-201101: 42x 64
Presentationhost.exe4.0.31106.0321,31216-Dec-201101: 42x 64
Presentationhostproxy.dll4.0.31106.0110,88816-Dec-201101: 42x 64
Windowsbase.dll3.0.6920.57381,114,11216-Dec-201101: 42x 86
Presentationframework.dll3.0.6920.57385,283,84016-Dec-201101: 49x 86
Windowsbase.dll3.0.6920.57381,253,37616-Dec-201101: 49x 86
Presentationcore.dll3.0.6920.57384,218,88016-Dec-201101: 49x 86
Presentationframework.dll3.0.6920.57385,283,84016-Dec-201101: 49x 86
Presentationhostdll.dll3.0.6920.5738131,36016-Dec-201101: 49x 86
Presentationhost.exe4.0.40305.0296,22416-Dec-201101: 49x 86
Presentationhostproxy.dll4.0.31106.0100,13616-Dec-201101: 49x 86
Windowsbase.dll3.0.6920.57381,253,37616-Dec-201101: 49x 86



CÁCH GI?I QUY?T KHÁC

Đ? làm vi?c xung quanh v?n đ? này, s? d?ng m?t trong nh?ng phương pháp sau đây:
  • S? d?ng m?tStaticResource đ? tham kh?o các đ?i tư?ng màu trong đ?i tư?ng bàn ch?i. Ví d?, thay đ?i m?t ph?n đ?u tiên c?a m? trong t?p tin XAML đư?c đ? c?p trong ph?n "Tri?u ch?ng" như sau:
    <Color x:Key="color1">#ff4050ff</Color> 
    <SolidColorBrush x:Key="brush1" Color="{StaticResource color1}"></SolidColorBrush>
  • Đ?t cácx: chia s? tùy ch?n đ? sai n?u các DynamicResource đư?c s? d?ng. Ví d?, thay đ?i m?t ph?n đ?u tiên c?a m? trong t?p tin XAML đư?c đ? c?p trong ph?n "Tri?u ch?ng" như sau:
    <Application.Resources>
            <Color x:Key="color1">#ff4050ff</Color>
            <SolidColorBrush x:Key="brush1" x:Shared="False" Color="{DynamicResource color1}" />
        </Application.Resources>



THAM KH?O

Đ? bi?t thêm thông tin v? các DynamicResource đánh d?u ph?n m? r?ng, truy c?p vào trang web MSDN sau đây:
Thông tin chung v? ph?n m? r?ng đánh d?u DynamicResource
Đ? bi?t thêm chi ti?t v? WPF bàn ch?i, truy c?p trang web MSDN sau đây:
Thông tin chung v? WPF bàn ch?i

T?NH TR?NG

Microsoft đ? xác nh?n r?ng đây là m?t v?n đ? trong các s?n ph?m c?a Microsoft đư?c li?t kê trong ph?n "Áp d?ng cho".

Thu?c tính

ID c?a bài: 2651992 - L?n xem xét sau cùng: 10 Tháng Giêng 2012 - Xem xét l?i: 1.0
Áp d?ng
  • Microsoft .NET Framework 3.0
  • Microsoft .NET Framework 3.0 Service Pack 1
  • Microsoft .NET Framework 3.0 Service Pack 2
  • Microsoft .NET Framework 3.5
  • Microsoft .NET Framework 3.5 Service Pack 1
T? khóa: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2651992 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:2651992

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com