2010-09-22 172 views
1

情況如下:
DataGrid有一個RowDetailsTemplate,它包含另一個DataGrid(子網格)。如果添加包含EventHandler的DataGridTemplateColumn,PresentationFramework.dll將拋出NullReferenceException升級到.NET 4.0後WPF DataGrid中的錯誤

此問題僅在.NET 4.0中存在。如果項目的目標是.NET 3.5(並且將WPFToolkit用於DataGrid組件),則所有內容均按預期工作。

我附上了一個重現此錯誤的小示例項目。在該項目中是一個README文件,它再次解釋問題並顯示異常的堆棧跟蹤。 (示例項目可以發現here

重現步驟:
1.運行示例項目原樣。
2.嘗試網格第一行中的「刪除我」鏈接,確認它顯示一條消息。
3.單擊第一列中的'SHOW'單元格,並確認它顯示帶有一個項目的子網格。
4.嘗試子網格中的「刪除我」鏈接,確認它沒有任何作用(它沒有用代碼連接)。
5.關閉窗口,併爲MainWindow.xaml
6.線了Hyperlink.Click事件MainWindow.xaml在線36:添加點擊=「HyperlinkClick」的超鏈接標籤。
7.再次運行項目,然後單擊第一列中的'SHOW':引發NullReferenceException!

這是從https://connect.microsoft.com/VisualStudio/feedback/details/603333/wpf-datagrid-rowdetails-add-2nd-datagrid-to-rowdetailstemplate-with-eventhandlers#details交叉發佈的,但這對我來說是一個阻塞問題。

所以問題是:爲什麼會發生這種情況?我認爲這是PresentationFramework代碼中的一個錯誤,但我不是100%確定的。我能做些什麼來使EventHandler按預期工作?

我發現了一個臨時解決辦法,允許用戶按下刪除鍵,但這會打破我們的應用程序的行爲。
有沒有人可以重現和評論這個問題?

+0

你的問題是什麼? – 2010-09-22 12:28:26

+0

編輯原始帖子的問題... – RoelF 2010-09-22 12:31:31

回答

0

我有一個類似的問題,似乎與CanUserAddRows =「True」有關......如果將其設置爲false,問題就會消失。

相關問題