我有一个包含列表视图的 .xaml 文件。Listview 有 2 个项目,其中以下列方式绑定:
<ListView Name="listView" ItemsSource="{Binding DeviceList}" SelectedItem="{Binding ConnectedDevice, Mode=TwoWay}" >
<ListView.View>
<GridView>
<GridViewColumn Width="300" Header="Name" DisplayMemberBinding="{Binding Description}" />
<GridViewColumn Width="240" Header="Connection Status" DisplayMemberBinding="{Binding DeviceName}" />
</GridView>
</ListView.View>
</ListView>
描述和设备名称都是ModelClass的一部分。在我的 ViewModel 类中,我能够从我连接的硬件中提取设备名称和描述。
public ObservableCollection<ComDeviceInfo> DeviceList
{
get { return comDevices; }
set
{
comDevices = value;
NotifyPropertyChanged("DeviceList");
}
}
public ComDeviceInfo ConnectedDevice
{
get { return connectedDevice; }
set
{
connectedDevice = value;
NotifyPropertyChanged("ConnectedDevice");
}
}
//Called Inside Constructor
private void checkForDevicesTimer_Elapsed(Object source, ElapsedEventArgs e)
{
DeviceList = ComDeviceManagement.FindDevices();
}
这里ComDeviceManagement是我的类,它有FINDDevices()它返回设备名称和描述。你可以注意到上面的 DeviceList = ComDeviceManagement.FindDevices() 表明描述和名称都存在于列表中。
一切正常。但我基本上想要的是在一列中显示设备名称和描述,而不是两个单独的列。那么我在这里面临的问题是设备名称和描述。即使它们都显示不同的值,难道不是我可以将它们连接起来并将两个值显示到单个列中的一种方式吗???您可能会注意到 .xaml 文件中的另一列,但我想在 listView 的单个列中显示(连接)这两个列。我怎样才能做到这一点?
请帮忙!!