У меня есть ListView с 3 колонками:ListView ItemsSource связывания
<ListView ItemsSource="{Binding ParamName}" HorizontalAlignment="Left" Height="109" Margin="10,87,0,0" VerticalAlignment="Top" ScrollViewer.HorizontalScrollBarVisibility="Disabled" Width="281">
<ListView.View>
<GridView>
<GridView.ColumnHeaderContainerStyle>
<Style TargetType="{x:Type GridViewColumnHeader}">
<Setter Property="IsEnabled" Value="False"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="TextElement.Foreground" Value="Black"/>
</Trigger>
</Style.Triggers>
</Style>
</GridView.ColumnHeaderContainerStyle>
<GridViewColumn Header="Name" Width="60"/>
<GridViewColumn Header="Type" Width="60"/>
<GridViewColumn Header="Content" Width="156"/>
</GridView>
</ListView.View>
</ListView>
В настоящее время я поставил ParamName
как мой ItemsSource, который, очевидно, не достичь желаемого результата таким образом.
В моей модели ViewModel у меня есть ObservableCollections для каждой колонки (ParamName
для имени, ParamType
для типа и ParamContent
для контента). Эти ObservableCollections правильно заполнены, и я могу получить их данные через Binding, но я не могу заполнить колонки соответствующими данными.
Я думал о некоторых возможных решениях, но никто из них, похоже, не работает. Какой был бы лучший подход для этой проблемы?
Вот как это выглядит (слева) и как это должно выглядеть так (справа):
Называя их после того, как их типы могут быть немного запутанным.
У вас есть три (3) Коллекции? Зачем? Вы связываете только одну коллекцию, как я понимаю - и все столбцы дерева имеют одинаковые значения? Попробуйте изменить ParamNames, чтобы убедиться, что это так. Если мое предложение правильное - попробуйте сделать одну коллекцию сложного типа, содержащую все ваши значения: ObservableCollection, где MyRow - класс с необходимыми свойствами. –
@Shwed_Berlin Да, это проблема, которая у меня есть. У меня есть 3 разных коллекции, и я хотел бы привязать одну коллекцию к каждому столбцу. – Kohnarik
попробуйте сделать одну коллекцию сложного типа, содержащую все ваши значения: ObservableCollection, где MyRow - класс с необходимыми свойствами. _P.S. Извините, у меня проблемы с редактированием моего комментария:) _ –