リストビューを持つ .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>
DescriptionとDevicenameはどちらもModelClassの一部です。私の ViewModel クラスでは、接続したハードウェアから Device name と Description を抽出できます。
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() は、説明と名前の両方がリスト内に存在することを示しています。
すべてが正常に機能しています。しかし、私が基本的に望んでいるのは、デバイス名と説明の両方を 2 つの別々の列ではなく 1 つの列に表示することです。ここで私が直面している問題は、Devicename と Description にあります。どちらも異なる値を表示しますが、それらを連結して両方の値を単一の列に表示できる方法ではありませんか? .xaml ファイルに別の列があることに気付くかもしれませんが、listView の単一の列内にこれらの両方を表示 (連結) したいと考えています。どうやってやるの?
助けてください!!