2016-12-04 40 views
0

我陷入了一个问题。在我正在处理的项目中,我必须用一个盒子填充一列ListView,另一个填充组合框。以下是我用作ObservableCollection将其绑定到ListView的数据模型。工作得很好!初始绑定后无法更改对象的属性

public class PointDataMainListView 

{ 
    public string CheckBoxName { get; set; } 
    public ObservableCollection<string> ComboBoxItems{ get; set; } 
    public Visibility visibility { get; set; } 
} 

除了我很难改变组合框本身的属性。特别是可见性属性。

下面是我使用组合框

<DataTemplate x:Key="ComboBoxCell"> 

     <ComboBox x:Name="ComboBox" 
        ItemsSource="{Binding ComboBoxItems}" 
        Width="100" 
        Visibility="{Binding visibility}"/> 

    </DataTemplate> 

当填充首次列表视图或添加新项到ListView的知名度可以设置没有问题的数据模板。当我的ObservableCollection中的能见度< PointDataMainListView>被更改为已显示的项目时,什么都没有发生。

我正在研究的解决方案之一是尝试通过列表视图项目进行迭代,尝试获取对实际组合框的引用以更改其属性。这就是说,我相信必须有一个更加优雅的解决方案才能达到预期的效果。感谢您的任何帮助。

+0

是否要设置所有组合框的可见性?可能会创建一个网格并绑定到网格可见性。所有组合框都显示或隐藏。 –

+0

我希望能够单独设置每个组合框的可见性 –

回答

1

你的类需要实现INotifyPropertyChanged,你的属性设置器需要调用PropertyChanged方法。