(掛起)以下的程序鎖定了可再現地,每當用戶改變經由鍵組合的鍵盤佈局。如果鍵盤佈局通過托盤小程序更改,它不會鎖定。將佈局更改爲英文時不鎖定。如果Task
從不執行,它不鎖定。很簡單WPF程序鎖死上鍵盤佈局改變
XAML:
<StackPanel>
<TextBox></TextBox>
<Button Click="Button_Click">Click me</Button>
</StackPanel>
C#:
private void Button_Click(object sender, RoutedEventArgs e)
{
Task.Factory.StartNew(() =>
{
var visual = new DrawingVisual();
using (var context = visual.RenderOpen())
{
}
});
}
按鈕點擊之前,我請我可以切換鍵盤佈局。點擊後,程序首次嘗試切換佈局時鎖定。
重要的是,僅當佈局經由Alt鍵 + 移 + 或Ctrl鍵 + 移位切換髮生這種錯誤 + (和,但不是)。
它的方式,太晚避免後臺線程使用DrawingVisual
。這已成爲該產品不可或缺的核心功能。任何想法如何解決這個問題都非常受歡迎。
此錯誤再現上.NET 4.0,Win7的32位和64位。
賞金:這個bug在百分比方面影響的人很少,但是每當他們習慣性地通過快捷方式改變鍵盤佈局時,它的影響會不斷地導致鎖定(相應的數據丟失)。我想要一個解決方法,它不會改變某些視覺效果在單獨的線程上呈現的事實。
只是想讓你知道,我沒有得到這個問題的.NET 4.0。儘管如此,無法在4.5測試它。 – 2012-04-16 14:47:30
對我來說也一樣 - 它在.Net 4.0上運行正常。我想你可以把它作爲.NET 4.5的一個bug報告,如果你可以用.NET 4.5 – Nikolay 2012-04-16 14:49:03
@Nikolay你可以嘗試配置您的鍵盤佈局改變,當你按下'ALT + SHIFT任何機會+ 2'重現它在乾淨的Windows安裝?我已經設法在.NET 4上做到這一點。 – 2012-04-16 14:59:25