我有一个.xaml文件,它有一个列表视图。列表视图具有其内以下列方式结合2项:如何将两列的值连接到一个ListView中
<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>
两个说明和DEVICENAME是ModelClass.In我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()返回我设备名和说明。 U可以注意到上面的DeviceList = ComDeviceManagement.FindDevices(),它表示描述和名称都存在于列表中。
一切工作正常。但我基本想要的是在一列中显示Devicename和Description,而不是两列。那么我在这里面临的问题是Devicename和Description。即使他们都显示不同的值,是不是他们的方式,我可以协调他们,并显示两个值到一个单一的列?您可能会注意到.xaml文件中的另一列,但我想在listView的单个列中显示(连接)这两个列。 我该怎么做?
请帮忙!!
新列是否可编辑? –
那么我在这里面临的问题是Devicename和Description。即使他们都显示不同的值,是不是他们的方式,我可以concatinate他们并显示这些值到一个单一的列? –
为什么不让一个属性内在地协调他们,并将其绑定到一列? – Vale