Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/three.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在C中使用绑定时出错#_C#_Json_Wpf_Xaml_Binding - Fatal编程技术网

C# 在C中使用绑定时出错#

C# 在C中使用绑定时出错#,c#,json,wpf,xaml,binding,C#,Json,Wpf,Xaml,Binding,我正在绑定一个json对象,该对象的属性名为SelectedNotamColor,如果我在ListView.ItemContainerStylesetter中使用它,当我尝试将json对象保存到文本文件中时,会出现如下错误 System.InvalidOperationException:正在使用该对象 当我删除setter属性时,它将恢复正常 如何解决此问题,或者是否有其他方法绑定我的ListViewitems的颜色 样式设置器属性中存在语法错误。 试着替换 mode=Towway 具有 模式

我正在绑定一个json对象,该对象的属性名为
SelectedNotamColor
,如果我在
ListView.ItemContainerStyle
setter中使用它,当我尝试将json对象保存到文本文件中时,会出现如下错误

System.InvalidOperationException:正在使用该对象

当我删除setter属性时,它将恢复正常

如何解决此问题,或者是否有其他方法绑定我的
ListView
items的颜色

  • 样式设置器属性中存在语法错误。 试着替换
    mode=Towway
    具有
    模式=双向
  • 我找不到填充列表框项目的代码行。 例如,在XAML中:
    ItemsSource=“{Binding YourListOfJsonObjects}
    或代码隐藏:
    lvBB.itemsource=YourListOfJsonObjects

  • 尝试将绑定模式从
    mode=TwoWay
    更改为
    mode=Oneway
    。这可能会解决此错误,但我不知道单向绑定逻辑是否适合您。是否可以将相关源代码放在此处或任何位置?我通过更改{binding SelectedNotamColor}来解决此错误,以前,SelectedNotamColor是一个画笔,但它可能会导致UI线程错误。所以我将其更改为字符串,然后它就可以正常工作了。谢谢。
    <ListView Margin="6,6,5,7" x:Name="lvBB" Foreground="Black" >
      <ListView.ItemTemplate>
        <DataTemplate>
          <WrapPanel Orientation="Vertical"  Margin="10" Background="{Binding SelectedNotamColor}">
            <WrapPanel Orientation="Horizontal">
              <TextBlock Text="{Binding Priority}" FontWeight="Bold" FontSize="18"/>                            
            </WrapPanel>
        </DataTemplate>
     </ListView.ItemTemplate>
     <ListView.ItemContainerStyle>
       <Style TargetType="ListViewItem">
         <Setter Property="Background" Value="{Binding SelectedNotamColor, mode=Toway}"/>
       </Style>
     </ListView.ItemContainerStyle>              
    </ListView>