ยกเลิกโปรแกรมแก้ไขด่วน 2783808 สำหรับ 4.5 กรอบของ.NET ใน Windows 7, Windows 7 SP1, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 และ Windows Vista SP2

การแปลบทความ การแปลบทความ
หมายเลขบทความ (Article ID): 2783808 - ผลิตภัณฑ์ที่เกี่ยวข้องในบทความนี้
ขยายทั้งหมด | ยุบทั้งหมด

เนื้อหาบนหน้านี้

คำแนะนำ

บทความนี้อธิบายการยกเลิกโปรแกรมแก้ไขด่วน 2783808 สำหรับการ Microsoft .NET Framework 4.5 Service Pack 2 (SP2) ใน Windows 7, Windows 7 Service Pack 1 (SP1), Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 และ Windows Vista SP2 ยกเลิกโปรแกรมแก้ไขด่วนนี้จะพร้อมใช้งานเมื่อต้องการแก้ไขปัญหาต่าง ๆ ใน the.NET กรอบ 4.5 สำหรับข้อมูลเพิ่มเติมเกี่ยวกับปัญหาที่โปรแกรมแก้ไขด่วนแก้ไข ดูส่วน "ปัญหาที่มีการยกเลิกโปรแกรมแก้ไขด่วนนี้ช่วยแก้ไข"

ข้อมูลเพิ่มเติม

ข้อมูลโปรแกรมแก้ไขด่วน

สามารถโหลดโปรแกรมแก้ไขด่วนจาก Microsoft ได้แล้ว อย่างไรก็ตาม นั้นมีไว้เพื่อแก้ไขปัญหาที่อธิบายในบทความนี้เท่านั้น ใช้กับระบบที่พบปัญหานี้เท่านั้น

เมื่อต้องการแก้ไขปัญหานี้ ติดต่อฝ่ายบริการสนับสนุนลูกค้าของ Microsoft เพื่อขอรับโปรแกรมแก้ไขด่วน สำหรับรายการสมบูรณ์ของหมายเลขโทรศัพท์บริการการสนับสนุนลูกค้าของ Microsoft และข้อมูลเกี่ยวกับต้นทุนสนับสนุน แวะไปที่เว็บไซต์ของ Microsoft ต่อไปนี้:
http://support.microsoft.com/contactus/?ws=support
หมายเหตุ ในบางกรณี ค่าธรรมเนียมค่าใช้จ่ายสำหรับการสนับสนุนอาจสามารถยกเลิกได้ถ้า Microsoft Support Professional พบว่าการปรับปรุงเฉพาะจะสามารถแก้ปัญหาของคุณได้ ค่าใช้จ่ายในการสนับสนุนปกติจะมีผลกับคำถามการสนับสนุนเพิ่มเติมและปัญหาที่ไม่สามารถจัดเฉพาะเจาะจงในการปรับปรุง

ข้อกำหนดเบื้องต้น

เมื่อต้องการใช้โปรแกรมแก้ไขด่วนนี้ คุณต้องมี the.NET กรอบ 4.5 SP1 โดยการติดตั้งใน Windows 7, Windows 7 SP1, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 หรือ Windows Vista SP2

ความต้องการสำหัรับการเริ่มระบบใหม่

คุณต้องเริ่มระบบใหม่คอมพิวเตอร์หลังจากที่คุณใช้โปรแกรมแก้ไขด่วนนี้ถ้ามีการใช้แฟ้มที่ได้รับผลกระทบใด ๆ เราขอแนะนำให้ คุณปิดโปรแกรมประยุกต์.NET Framework ทั้งหมดก่อนที่คุณใช้โปรแกรมแก้ไขด่วนนี้

ข้อมูลการแทนที่โปรแกรมแก้ไขด่วน

แพคเกจโปรแกรมแก้ไขด่วนนี้ไม่ได้แทนแพคเกจโปรแกรมแก้ไขด่วนที่นำออกใช้ก่อนหน้านี้

ข้อมูลแฟ้ม

ยุบรูปภาพนี้ขยายรูปภาพนี้
assets folding start collapsed
รุ่นสากลของโปรแกรมแก้ไขด่วนนี้มีแอตทริบิวต์ของแฟ้ม (หรือแอตทริบิวต์แฟ้มรุ่นที่ใหม่กว่า) ซึ่งแสดงอยู่ในตารางต่อไปนี้ วันและเวลาสำหรับแฟ้มเหล่านี้จะแสดงรายการในรูปแบบเวลามาตรฐานสากล (UTC) เมื่อคุณดูข้อมูลแฟ้มข้อมูล จะถูกแปลงเป็นเวลาท้องถิ่น เมื่อต้องการค้นหาความแตกต่างระหว่างเวลา UTC กับเวลาท้องถิ่น ใช้ โซนเวลา ในการ วันและเวลา สินค้าใน'แผงควบคุม'
สำหรับทั้งหมดได้รับการสนับสนุนรุ่นที่ใช้ x86 ของ Windows 7, Windows 7 SP1, Windows 2008 SP2 และ Windows Vista SP2
ยุบตารางนี้ขยายตารางนี้
$$$$ ชื่อแฟ้มรุ่นของแฟ้มขนาดของแฟ้มวันที่เวลาแพลตฟอร์ม
Clr.dll4.0.30319.190476,876,60828-พฤศจิกายน-201201:28x 86
mscordacwks.dll4.0.30319.190471,299,44028-พฤศจิกายน-201201:28x 86
Mscordbi.dll4.0.30319.190471,096,65628-พฤศจิกายน-201201:28x 86
Mscorlib.dll4.0.30319.190475,171,15228-พฤศจิกายน-201202:39x 86
Presentationcore.dll4.0.30319.190473,224,56028-พฤศจิกายน-201202:39x 86
Presentationframework.dll4.0.30319.190476,187,01628-พฤศจิกายน-201202:39x 86
Sos.dll4.0.30319.19047746,94428-พฤศจิกายน-201201:28x 86
System.dll4.0.30319.190473,449,28828-พฤศจิกายน-201202:39x 86
System.identitymodel.dll4.0.30319.190471,084,92828-พฤศจิกายน-201202:39x 86
System.printing.dll4.0.30319.19047342,00028-พฤศจิกายน-201202:39x 86
System.runtime.serialization.dll4.0.30319.190471,051,69628-พฤศจิกายน-201202:39x 86
System.servicemodel.channels.dll4.0.30319.19047158,76828-พฤศจิกายน-201202:39x 86
System.servicemodel.discovery.dll4.0.30319.19047312,36028-พฤศจิกายน-201202:39x 86
System.servicemodel.dll4.0.30319.190476,368,78428-พฤศจิกายน-201202:39x 86
Windowsbase.dll4.0.30319.190471,237,48828-พฤศจิกายน-201202:39x 86
สำหรับทั้งหมดได้รับการสนับสนุน x 64-รุ่นที่ใช้ Windows 7, Windows 7 SP1, Windows 2008 R2, Windows 2008 R2 SP1, Windows 2008 SP2 และ Windows Vista SP2
ยุบตารางนี้ขยายตารางนี้
$$$$ ชื่อแฟ้มรุ่นของแฟ้มขนาดของแฟ้มวันที่เวลาแพลตฟอร์ม
Clr.dll4.0.30319.190479,804,22428-พฤศจิกายน-201200:33x 64
Clr.dll4.0.30319.190476,876,60828-พฤศจิกายน-201201:28x 86
mscordacwks.dll4.0.30319.190471,742,81628-พฤศจิกายน-201200:33x 64
mscordacwks.dll4.0.30319.190471,299,44028-พฤศจิกายน-201201:28x 86
Mscordbi.dll4.0.30319.190471,497,04028-พฤศจิกายน-201200:33x 64
Mscordbi.dll4.0.30319.190471,096,65628-พฤศจิกายน-201201:28x 86
Mscorlib.dll4.0.30319.190475,120,46428-พฤศจิกายน-201200:33x 64
Mscorlib.dll4.0.30319.190475,171,15228-พฤศจิกายน-201202:39x 86
Presentationcore.dll4.0.30319.190473,207,68028-พฤศจิกายน-201200:33x 64
Presentationcore.dll4.0.30319.190473,224,56028-พฤศจิกายน-201202:39x 86
Presentationframework.dll4.0.30319.190476,187,01628-พฤศจิกายน-201202:39x 86
Sos.dll4.0.30319.19047785,34428-พฤศจิกายน-201200:33x 64
Sos.dll4.0.30319.19047746,94428-พฤศจิกายน-201201:28x 86
System.dll4.0.30319.190473,449,28828-พฤศจิกายน-201202:39x 86
System.identitymodel.dll4.0.30319.190471,084,92828-พฤศจิกายน-201202:39x 86
System.printing.dll4.0.30319.19047342,01628-พฤศจิกายน-201200:33x 64
System.printing.dll4.0.30319.19047342,00028-พฤศจิกายน-201202:39x 86
System.runtime.serialization.dll4.0.30319.190471,051,69628-พฤศจิกายน-201202:39x 86
System.servicemodel.channels.dll4.0.30319.19047158,76828-พฤศจิกายน-201202:39x 86
System.servicemodel.discovery.dll4.0.30319.19047312,36028-พฤศจิกายน-201202:39x 86
System.servicemodel.dll4.0.30319.190476,368,78428-พฤศจิกายน-201202:39x 86
Windowsbase.dll4.0.30319.190471,237,48828-พฤศจิกายน-201202:39x 86
ยุบรูปภาพนี้ขยายรูปภาพนี้
assets folding end collapsed

การตัดสินค้าจากคลังที่แก้ไขยกเลิกโปรแกรมแก้ไขด่วนนี้

รันไทม์ภาษาทั่วไป การตัดสินค้าจากคลัง (CLR)

ปัญหาที่ 1

เมื่อโปรแกรมประยุกต์.NET Framework 4.5 ความพยายามที่จะเรียกใช้ชุดเก็บรวบรวมขยะพื้นหลังบนคอมพิวเตอร์ที่มีหน่วยความจำ การล็อกตายอาจเกิดขึ้น

ปัญหาที่ 2

วิธีการPerformanceCounterCategory.GetCategoriesไม่สามารถกลับรายการของประสิทธิภาพการทำงานประเภทนับในบางระบบปฏิบัติการที่ใช้ตำแหน่งที่ตั้งไม่ใช่ภาษาอังกฤษ นอกจากนี้ ถ้าโปรแกรมประยุกต์.NET Framework ที่เรียกใช้รหัสที่คล้ายกับต่อไปนี้เพื่อระบุประเภทของตัวนับประสิทธิภาพการทำงาน ไม่มีค่าจะถูกส่งกลับ:
PerformanceCounterCategory[] categories;
categories = PerformanceCounterCategory.GetCategories();
Console.WriteLine(categories.Length + " categories are registered on this computer");
หลังจากที่คุณใช้โปรแกรมแก้ไขด่วน คุณต้องเพิ่มตัวใหม่ LocalizedPerfCounter ตั้งค่าคอนฟิกคีย์ต่อไปนี้ในแฟ้มการกำหนดค่าโปรแกรมประยุกต์สำหรับโปรแกรมประยุกต์.NET Framework ของคุณ:
<configuration>
    <appSettings>
        <add key="LocalizedPerfCounter" value="true" />
    </appSettings>
</configuration>

ปัญหาของ Windows สื่อสารมูลฐาน (WCF)

ปัญหาที่ 1

สมมติว่า ไม่มีโปรแกรมประยุกต์ที่ใช้คลาสSystem.Xml.XmlDictionaryReader WCF ในการอ่านการ เข้ารหัสอักขระ Unicode เมื่อแอพลิเคชันอ่านอักขระ Unicode บางอย่างที่อยู่ภายในช่วงที่กำหนด ขั้นตอนการอ่านอาจจะช้า

หมายเหตุสำหรับข้อมูลเพิ่มเติมเกี่ยวกับคลา System.Xml.XmlDictionaryReader ไปยังเว็บไซต์ MSDN ต่อไปนี้:
ข้อมูลทั่วไปเกี่ยวกับคลาส XmlDictionaryReader


ปัญหาที่ 2

บนคอมพิวเตอร์ที่กำลังทำงานอยู่ 4.5 กรอบ.NET หรือรุ่นก่อนหน้า โปรแกรมประยุกต์ WCF งีใบรับรองไคลเอ็นต์ถ้าคุณสมบัติ HttpsTransportBindingElement.RequireClientCertificate ถูกตั้งค่าเป็นFALSE เมื่อโปรแกรมประยุกต์พยายามที่จะเข้าถึงใบรับรองของไคลเอนต์ WCF ทำงานภายในหนึ่งในวิธีต่อไปนี้:
  • จำเป็นต้องใช้ หรือปฏิเสธ
  • ไม่จำเป็นต้องมี และไม่มีการตรวจสอบ
ในสถานการณ์นี้ คุณไม่สามารถสร้างโปรแกรมประยุกต์สำหรับใบรับรองการตรวจสอบกำลัง permissive (ตัวอย่างเช่น คุณไม่สามารถสร้างโปรแกรมประยุกต์ที่ใช้โหมดไม่จำเป็นต้องมีใบรับรองแต่หากมีระบุการตรวจสอบ) ได้ โปรแกรมแก้ไขด่วนนี้ช่วยให้แอพลิเคชันเมื่อต้องการเพิ่มการตั้งค่าสำหรับแต่ละปลายทางที่ให้การรับรองไคลเอ็นต์ไปยังโปรแกรมประยุกต์ WCF ที่ถ้าไคลเอ็นต์ไม่มีใบรับรอง อย่างไรก็ตาม ใบรับรองไม่ก็ การเชื่อมต่อจะไม่สามารถปฏิเสธถ้าไม่มีใบรับรอง ตัวอย่างเช่น เว็บไซต์อาจลองใช้การรับรองความถูกต้องของแบบฟอร์ม เพื่อตรวจสอบความพยายามในการเข้าถึงบนเซิร์ฟเวอร์ และ การให้สิทธิ์เพิ่มเติมถ้า มีแสดงสถานะการออนไลน์ของใบรับรองไคลเอ็นต์ไปยังเซิร์ฟเวอร์

การพัฒนาแอพลิเคชัน สร้างลักษณะการทำงานของการ EndpointBehavior แล้ว เพิ่มลักษณะการทำงานเป็นการผูกข้อมูลที่อยู่ของปลายทาง ตัวอย่างเช่น คุณเรียกใช้รหัสดังต่อไปนี้ เพื่อสร้าง และเพิ่มลักษณะการทำงาน:
class ValidateOptionalClientCertificateBehavior : IEndpointBehavior
        {
            private const string ValidateOptionalClientCertificates = "wcf:HttpTransport:ValidateOptionalClientCertificates";
 
            public void AddBindingParameters(ServiceEndpoint endpoint, BindingParameterCollection bindingParameters)
            {
                IDictionary<string, object> endpointSettings = bindingParameters.Find<IDictionary<string, object>>();
 
                if (endpointSettings == null)
                {
                    endpointSettings = new Dictionary<string, object>(StringComparer.OrdinalIgnoreCase);
                    bindingParameters.Add(endpointSettings);
                }
 
                if (endpointSettings.ContainsKey(ValidateOptionalClientCertificates))
                {
                    endpointSettings[ValidateOptionalClientCertificates] = true;
                }
                else
                {
                    endpointSettings.Add(ValidateOptionalClientCertificates, true);
                }
            }
 
            public void ApplyClientBehavior(ServiceEndpoint endpoint, ClientRuntime clientRuntime)
            {
            }
 
            public void ApplyDispatchBehavior(ServiceEndpoint endpoint, EndpointDispatcher endpointDispatcher)
            {
            }
 
            public void Validate(ServiceEndpoint endpoint)
            {
                if (endpoint.ListenUri.Scheme != "https")
                {
                    throw new InvalidOperationException();
                }
            }
        }
    }
อีกวิธีหนึ่งคือ คุณสามารถเพิ่มการตั้งค่าปลายทางต่อไปนี้ไปยังคอลเลกชัน bindingParameters:
string ValidateOptionalClientCertificatesString = "wcf:HttpTransport:ValidateOptionalClientCertificates";
            Dictionary<string, object> endpointSettings = new Dictionary<string, object>();
            endpointSettings.Add(ValidateOptionalClientCertificatesString, true);
            bindingParameters.Add(endpointSettings);


ปัญหาที่ 3

เมื่อคุณเรียกใช้บริการ WCF ที่สนับสนุนการค้นพบ WS ผ่านผู้ใช้เดตาแกรมโพรโทคอล (UDP) บนเซิร์ฟเวอร์ คุณอาจพบปัญหาต่อไปนี้อย่างน้อยหนึ่งอย่าง:
  • การใช้งาน CPU เพิ่มขึ้นโดยไม่คาดหมายบนเซิร์ฟเวอร์
  • ปริมาณการใช้งานแบบหลายผู้รับจะมีขนาดใหญ่กว่าที่คาดไว้
  • พบข้อบกพร่อง SOAP จำนวนมากบนเครือข่ายที่มีการใช้งาน.NET Framework 4.5 ในทั้งหมด หรือชุดย่อยของคอมพิวเตอร์
โปรแกรมแก้ไขด่วนนี้ป้องกันไม่ให้ข้อบกพร่อง SOAP ส่งคืนจากปลายทาง UDP ถ้า ข้อความการค้นพบ WS แบบหลายผู้รับได้รับบนปลายทางที่ไม่ได้รับการกำหนดค่าสำหรับการค้นพบ WS

หมายเหตุปัญหาเหล่านี้อาจเกิดขึ้นแม้ว่าการบริการไม่ได้คอมไพล์ไปยังเป้าหมาย 4.5 Framework .NET ปัญหาเหล่านี้อาจเกิดขึ้นในสภาพแวดล้อมหรือเครือข่ายที่ 4.5 Framework .NET มีอยู่บนปลายทางหนึ่ง หรือมากกว่า

ปัญหา Windows งานนำเสนอพื้นฐาน (WPF)


ปัญหาที่ 1

ประสิทธิภาพการพิมพ์ที่ไม่ดีเกิดขึ้นเมื่อคุณใช้บริการตามกรอบ 4.5 WPF a.NET เมื่อต้องการพิมพ์ไปยังเครื่องพิมพ์อินเทอร์เฟซอุปกรณ์กราฟิก (GDI) บนระบบปฏิบัติการ ปัญหานี้เกิดขึ้นหากมีเงื่อนไขต่อไปนี้:
  • ระบบปฏิบัติการที่เป็นโฮสต์การบริการใช้ตำแหน่งที่ตั้งไม่ใช่ภาษาอังกฤษ
  • ระบบปฏิบัติการที่มีการติดตั้งผลิตภัณฑ์ต่อไปนี้อย่างใดอย่างหนึ่ง:
    • WPF เวอร์ชัน 4.0
    • WPF เวอร์ชั่น 4.5
    • WPF เวอร์ชั่น 3.5 และโปรแกรมแก้ไขด่วนที่อธิบายไว้ในบทความฐานความรู้ของ Microsoft ต่อไปนี้ (หรือโปรแกรมแก้ไขด่วนการปรับรุ่นที่มีโปรแกรมแก้ไขด่วนนี้):
      980294 มีพิมพ์อักขระในแบบอักษรบาร์โค้ดในแบบอักษร wingdings โดยอัตโนมัติในเอกสาร XPS ที่สร้างขึ้น โดยใช้.NET Framework 3.0
  • คุณพิมพ์เอกสารที่มีหลายบล็อกของข้อความ
ปัญหานี้เกิดขึ้นเนื่องจากการดำเนินการค้นหาเกิดขึ้นทุกครั้งที่บล็อกของข้อความการค้นหาแบบอักษร GDI ที่จะใช้ในการแสดงข้อความเรียกใช้กระบวนการพิมพ์ การใช้ทรัพยากรของการดำเนินการค้นหาจะเพิ่มขึ้น ด้วยการใช้โปรแกรมแก้ไขด่วนที่มีกระจายใน KB980294, WPF เวอร์ชัน 4.0 และ WPF เวอร์ชั่น 4.5 นอกจากนี้ การใช้ทรัพยากรของการดำเนินการค้นหา dominates การใช้ทรัพยากรโดยรวมของกระบวนการพิมพ์ โปรแกรมแก้ไขด่วนนี้ช่วยแก้ปัญหาที่เป็นที่รู้จักในแบบตรรกะที่เก็บผลลัพธ์ของการดำเนินการค้นหา หลังจากที่คุณใช้โปรแกรมแก้ไขด่วน การใช้ทรัพยากรของการดำเนินการค้นหาเกิดขึ้นเพียงครั้งเดียวต่อ GDI อักษรแทนที่จะเกิดขึ้นเพียงครั้งเดียวสำหรับแต่ละบล็อกของข้อความ

ปัญหาที่ 2

พิจารณาสถานการณ์สมมติต่อไปนี้:
  • แอพพลิเคชันที่ใช้.NET Framework 4.5 ที่ประกอบด้วยตัวควบคุม WPF สามารถแก้ไขได้ ตัวควบคุมใช้เป็น Input Method Editor (IME)
  • คุณสามารถป้อนข้อความลงในตัวควบคุม
  • ตัวควบคุมสามารถทำการเปลี่ยนแปลงข้อความที่ถูกป้อน ต่อไปนี้คือ ตัวอย่างของลักษณะการทำงานนี้:
    • สมมติว่า คุณมีกล่องข้อความตัวควบคุมมีคุณสมบัติของข้อความผูกกับข้อมูล ปรับปรุงทริกเกอร์ของแหล่งที่มาสำหรับการผูกข้อมูล TextBox.Text ของคุณสมบัติถูกกำหนดเป็นPropertyChanged เมื่อคุณป้อนข้อมูลข้อความ จะถูกส่งไปยังคุณสมบัติของข้อมูลสินค้าต้นแบบที่ได้อธิบายไว้ในเส้นทางของการรวม นอกจากนี้ ข้อความสามารถถูกแทนที่ ด้วยสายอักขระที่แตกต่างกัน โดยรายการข้อมูลตัวเอง หรือตัวแปลงที่เกี่ยวข้องในการรวม
    • สมมติว่า คุณมีตัวควบคุมกล่องคำสั่งผสมสามารถแก้ไขได้ ด้วยการตั้งค่าการค้นหาข้อความที่เปิดใช้งาน เมื่อคุณป้อนข้อความ ตัวควบคุมกล่องคำสั่งผสมพยายามจับคู่ข้อความกับรายการตัวเลือกที่พร้อมใช้งาน ถ้าตัวควบคุมค้นหาตัวเลือกที่เริ่มต้น ด้วยข้อความ ข้อความจะถูกแทนที่ ด้วยข้อความเต็มของตัวเลือกที่ตรงกัน
  • คุณเปิดใช้งาน IME เพื่อส่งข้อความ WM_IME_CHAR ไปยังแอพลิเคชัน WPF เมื่อตัวควบคุมอยู่ในสถานะที่ "ข้อความถูกแก้ไข โดยตัวควบคุม"

    หมายเหตุลำดับที่แน่นอนของอักขระที่เป็นสาเหตุของข้อความนี้แตกต่างระหว่าง Ime ที่แตกต่างกันอย่างมาก บาง Ime ไม่เคยส่งข้อความนี้ทั้งหมด
ในสถานการณ์สมมตินี้ แอพลิเคชันโดยใช้.NET Framework 4.5 อาจล้มเหลวพร้อมกับมีข้อยกเว้น System.InvalidOperationException

เมื่อต้องการแก้ไขปัญหานี้ ใช้โปรแกรมแก้ไขด่วน โปรแกรมแก้ไขด่วนนี้ยังช่วยแก้ปัญหาเฉพาะเจาะจงที่ Visual Studio 2012 เหลวเมื่อคุณแก้ไขการเซิร์ฟเวอร์มูลฐานทีม (TFS) ทำงานสินค้าพร้อมกับการเปิดใช้งาน IME Pinyin Engkoo คำอธิบายโดยละเอียดของการตัดสินค้าจากคลังที่มีต่อไปนี้:

สมมติว่า คุณป้อนข้อความลงในฟิลด์ "มอบหมายให้" ของรายการงานใน 2012 Studio ที่มองเห็น เมื่อคุณกด Enter หลังจากที่คุณป้อนข้อมูลข้อความ Engkoo IME ส่งข้อความ WM_IME_CHAR ดังนั้น Visual Studio 2012 ล้มเหลว

หมายเหตุพิตช์เป็นเขตข้อมูลของรายการงาน TFS อาจทำให้เกิดปัญหานี้ได้
หมายเหตุนอกจากนี้ปัญหานี้เกิดขึ้นใน WPF เวอร์ชั่น 4.0 หรือรุ่นก่อนหน้าของ WPF อย่างไรก็ตาม การแก้ไขใช้เฉพาะกับ WPF เวอร์ชั่น 4.5
ปัญหาที่ 3

พิจารณาสถานการณ์สมมติต่อไปนี้:
  • คุณมีโปรแกรมประยุกต์ที่ WPF ที่แสดงคุณสมบัติผูกกับข้อมูล คุณสมบัติผูกกับข้อมูลประกอบด้วยการผูกข้อมูลที่มีเส้นทางซับซ้อน ตัวอย่าง การรวมมีเส้นทางต่อไปนี้:
    {ผูก Path=A.B.C.D }
  • คุณสร้างแบบจำลองข้อมูลที่คุณต้องยกการแจ้งเตือนของ PropertyChanged สำหรับคอมโพเนนต์บางอย่างของเส้นทางบนเธรดของผู้ปฏิบัติงาน ตัวอย่างเช่น เธรดของผู้ปฏิบัติงานทำให้การแจ้งเตือนการเปลี่ยนแปลงสำหรับคุณสมบัติ C.

    บันทึกย่อ
    • เธรดของผู้ปฏิบัติงานเธรดใด ๆ ซึ่งแตกต่างจากเธรด UI ก็ได้
    • เธรด UI มีเธรดที่ถูกประกาศ โดยการรวม
  • ก่อนเธรด UI ประมวลผลการแจ้งเตือน PropertyChanged รูปแบบข้อมูลนำเสนออื่น PropertyChanged แจ้งสำหรับคอมโพเนนต์ก่อนหน้าของเส้นทาง ตัวอย่างเช่น คุณมีเธรดทำให้การแจ้งเตือนการเปลี่ยนแปลงสำหรับคุณสมบัติก.

    หมายเหตุการแจ้งเตือน PropertyChanged ที่สองอาจเกิดขึ้นบนเธรดใด ๆ ซึ่งรวมถึงเธรด UI
ในกรณีนี้ การแจ้งเตือนที่สองจะถูกละเว้นไป นอกจากนี้ สูญหายของข้อมูลเกิดขึ้น ตัวอย่างเช่น คุณสมบัติ D ได้รับค่าเริ่มต้นของคุณสมบัติก. อย่างไรก็ตาม ผลลัพธ์คาดไว้คือ คุณสมบัติที่ D ได้รับการเปลี่ยนแปลงค่าของคุณสมบัติก.

หมายเหตุ ปัญหานี้อาจส่งผลต่อในเวอร์ชันก่อนหน้านี้กว่า WPF เวอร์ชั่น 4.5 อย่างไรก็ตาม การแก้ไขใช้เฉพาะกับ WPF เวอร์ชั่น 4.5


ปัญหาที่ 4

พิจารณาสถานการณ์สมมติต่อไปนี้:
  • คุณมีโปรแกรมประยุกต์ที่ WPF ที่เรียกใช้รหัสเมื่อต้องการประกาศตัวควบคุม TextBlock และรหัสคล้ายกับต่อไปนี้:
    <TextBlock TextTrimming="CharacterEllipses" TextWrapping="NoWrap">
  • คุณป้อนข้อมูลข้อความที่เป็นสายอักขระความยาวที่เป็นอักขระ 9600 หรือนานกว่านั้น
  • คุณเรียกใช้โปรแกรมประยุกต์ของคุณบนคอมพิวเตอร์ที่กำลังเรียกใช้ WPF เวอร์ชั่น 4.5
ในสถานการณ์สมมตินี้ ตัวควบคุม TextBlock แสดงข้อความหลายบรรทัด และแต่ละบรรทัดของข้อความลงท้าย ด้วยวงรี ตัวอย่าง คือหมายเลขของบรรทัดที่จะแสดงขึ้น n/ 9600

หมายเหตุn มีตัวยึดที่แสดงถึงความยาวของข้อความต้นฉบับ อย่างไรก็ตาม ผลลัพธ์คาดไว้คือ ว่า ตัวควบคุม TextBlock แสดงบรรทัดหนึ่งของข้อความที่ลงท้าย ด้วยวงรี

คุณสมบัติ

หมายเลขบทความ (Article ID): 2783808 - รีวิวครั้งสุดท้าย: 14 มิถุนายน 2556 - Revision: 2.0
ใช้กับ
  • Microsoft .NET Framework 4.5
Keywords: 
kbqfe kbhotfixserver kbfix kbexpertiseadvanced kbsurveynew kbmt KB2783808 KbMtth
แปลโดยคอมพิวเตอร์
ข้อมูลสำคัญ: บทความนี้แปลโดยซอฟต์แวร์การแปลด้วยคอมพิวเตอร์ของ Microsoft แทนที่จะเป็นนักแปลที่เป็นบุคคล Microsoft มีบทความที่แปลโดยนักแปลและบทความที่แปลด้วยคอมพิวเตอร์ เพื่อให้คุณสามารถเข้าถึงบทความทั้งหมดในฐานความรู้ของเรา ในภาษาของคุณเอง อย่างไรก็ตาม บทความที่แปลด้วยคอมพิวเตอร์นั้นอาจมีข้อบกพร่อง โดยอาจมีข้อผิดพลาดในคำศัพท์ รูปแบบการใช้ภาษาและไวยากรณ์ เช่นเดียวกับกรณีที่ชาวต่างชาติพูดผิดเมื่อพูดภาษาของคุณ Microsoft ไม่มีส่วนรับผิดชอบต่อความคลาดเคลื่อน ความผิดพลาดหรือความเสียหายที่เกิดจากการแปลเนื้อหาผิดพลาด หรือการใช้บทแปลของลูกค้า และ Microsoft มีการปรับปรุงซอฟต์แวร์การแปลด้วยคอมพิวเตอร์อยู่เป็นประจำ
ต่อไปนี้เป็นฉบับภาษาอังกฤษของบทความนี้:2783808

ให้ข้อเสนอแนะ

 

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