2016-12-03 40 views
0

文本菜單添加到ListView中,我得到了下面的代碼在我的XAML文件:C# - WPF - 不能因爲框架降級

... 
<ListView ...> 
    <ListView.ItemContainerStyle> 
     <Setter Property="ContextMenu"> 
      <Setter.Value> 
       <ContextMenu> 
        ... 
... 

如果我以調試模式運行該應用程序我得到一個System.Windows.Markup。 XamlParseException文本菜單與附加信息如下:

德國原裝:

廣告ditional information:Einem Objekt vom Typ「System.Object」kann kein Inhalt vom Typ「System.Windows.Controls.ContextMenu」hinzugefügt werden。

我的英語翻譯(我不知道原來的英文消息):

其他信息:無法添加類型「System.Windows.Controls.ContextMenu」的內容類型的對象「System.Object的」。

出於兼容性原因,我將應用程序從.NET4.0移植到.NET3.5。在.NET4.0中它沒有問題。

什麼問題以及如何解決?

更多信息:

  • IDE:Visual Studio的社區2015年
  • .NET 3.5

回答

1

試試這個

<ContextMenu x:Key="contextMenu"> 
    <MenuItem Name="mnuEdit" Header="_Edit" Click="MenuItem_Click" /> 
</ContextMenu> 
<Style TargetType="ListBoxItem"> 
    <Setter Property="ContextMenu" Value="{DynamicResource contextMenu}" /> 
</Style> 

Reference

+0

我ContextMenu不提供** x:Key **。 –

+0

**更新:**好的;第一次我不明白你的解決方案。現在我把contextMenu放在一些** Window.Resources **中,並用新的setter替換舊的。它現在有效;謝謝。 –