C# 从ListView中的绑定对象检索属性/字段,XAML

C# 从ListView中的绑定对象检索属性/字段,XAML,c#,xaml,listview,uwp,C#,Xaml,Listview,Uwp,如何检索绑定到列表视图的ObservableCollection中的对象?我想在列表视图中显示这些对象的属性/字段。我使用的是MVVM设计。ListView现在显示了绑定对象的名称空间,只是为了说明绑定是有效的 XAML: <Page x:Class="Test.MainPage" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.mic

如何检索绑定到
列表视图的
ObservableCollection
中的对象?我想在
列表视图中显示这些对象的属性/字段。我使用的是MVVM设计。
ListView
现在显示了绑定对象的名称空间,只是为了说明绑定是有效的

XAML:

<Page
    x:Class="Test.MainPage"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:local="using:Test"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
    xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
    xmlns:vm="using:Test.ViewModels"
    mc:Ignorable="d" d:DataContext="{d:DesignInstance vm:TestViewModel}">

    <Grid Background="{ThemeResource ApplicationPageBackgroundThemeBrush}" Width="400" Height="400">
        <Border BorderBrush="Gray" BorderThickness="2">
            <ListView x:Name="TestList" ItemsSource="{Binding TestClasses}" Foreground="Black" Height="300">
                <!-- Code to bind TestClasses properties/fields goes here -->
            </ListView>
        </Border>
    </Grid>
</Page>
我的ViewModel:

class TestViewModel : BaseViewModel
    {
        private ObservableCollection<TestClass> _testClasses;
        public ObservableCollection<TestClass> TestClasses
        {
            get { return _testClasses; }
            private set
            {
                _testClasses = value;
                OnPropertyChanged();
            }
        }

        public TestViewModel()
        {
            TestClasses = new ObservableCollection<TestClass> { new TestClass("test1,", 1), new TestClass("test2", 2) };
        }
    }
我真的想不出一个好方法来实现这一点(我对绑定ViewModel本身中所有可能的属性/字段都不感兴趣)-我希望你们能帮上忙

你尝试了什么? 因为如果为该ListView定义ItemTemplate,则只需绑定到以下属性:

<ListView>
  <ListView.ItemTemplate>
    <DataTemplate>
      <TextBlock Text={"Binding Name, Mode=TwoWay"} />
    </DataTemplate>
  </ListView.ItemTemplate>
</ListView>

您尝试了什么? 因为如果为该ListView定义ItemTemplate,则只需绑定到以下属性:

<ListView>
  <ListView.ItemTemplate>
    <DataTemplate>
      <TextBlock Text={"Binding Name, Mode=TwoWay"} />
    </DataTemplate>
  </ListView.ItemTemplate>
</ListView>


始终选择显而易见的选项。。wauw甚至没有尝试过,因为它没有自动向我建议绑定到一个名为“Name”的变量——在web上尝试了许多其他复杂的建议。非常感谢你给我指明了显而易见的道路!干杯,做标记作为回答。总是选择明显的选项。。wauw甚至没有尝试过,因为它没有自动向我建议绑定到一个名为“Name”的变量——在web上尝试了许多其他复杂的建议。非常感谢你给我指明了显而易见的道路!干杯,作为回答。
<ListView>
  <ListView.ItemTemplate>
    <DataTemplate>
      <TextBlock Text={"Binding Name, Mode=TwoWay"} />
    </DataTemplate>
  </ListView.ItemTemplate>
</ListView>