It is possible to set elements type in XAML in CollectionView?

How I can say ReSharper about type of elements in CollectionView? In XAML editor I have errors like "Cannot resolve property 'FirstValue' in data context of type 'object'" in second DataGrid.

Snippet

MainWindow.xaml:
Snippet
Window x:Class="TestWpf.MainWindow"
		xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
		xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
		xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
		xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
		xmlns:TestWpf="clr-namespace:TestWpf"
		mc:Ignorable="d"
		d:DataContext="{d:DesignInstance {x:Type TestWpf:MainWindowViewModel}}">
	<Window.DataContext>
		<TestWpf:MainWindowViewModel/>
	</Window.DataContext>
	<StackPanel>
		<DataGrid ItemsSource="{Binding Models1}" AutoGenerateColumns="False">
			<DataGrid.Columns>
				<DataGridTextColumn Binding="{Binding FirstValue}"/>
				<DataGridTextColumn Binding="{Binding SecondValue}"/>
			</DataGrid.Columns>
		</DataGrid>
 
		<DataGrid ItemsSource="{Binding Models2}" AutoGenerateColumns="False">
			<DataGrid.Columns>
				<DataGridTextColumn Binding="{Binding FirstValue}"/>
				<DataGridTextColumn Binding="{Binding SecondValue}"/>
			</DataGrid.Columns>
		</DataGrid>
	</StackPanel>
</Window>
MainWindowViewModel:
Snippet
using System.Collections.Generic;
using System.Windows.Data;
 
namespace TestWpf
{
	public class MainWindowViewModel
	{
		public MainWindowViewModel()
		{
			Models1 = new List<SubViewModel>
			{
				new SubViewModel {FirstValue = "First value 1", SecondValue = "Second value 1"},
				new SubViewModel {FirstValue = "First value 2", SecondValue = "Second value 2"},
				new SubViewModel {FirstValue = "First value 3", SecondValue = "Second value 3"},
				new SubViewModel {FirstValue = "First value 4", SecondValue = "Second value 4"}
			};
 
			Models2 = new ListCollectionView(Models1);
		}
 
		public class SubViewModel
		{
			public string FirstValue { get; set; }
			public string SecondValue { get; set; }
		}
 
		public List<SubViewModel> Models1 { get; set; }
 
		public ListCollectionView Models2 { get; set; }
	}
}

 

4
1 comment
Avatar
Permanently deleted user

I'm eagerly interested in this, too!

0

Please sign in to leave a comment.