我正在尝试为Examination_Room类编写DataTemplate。在此类中,有一个列表,其中包含称为Examination_type的枚举值。我尝试通过使用ItemsControl并将列表指定为ItemsSource来执行此操作,但是我无法实现枚举值(请参见下面的代码。
班级:
class Examination_Room : Room
{
public int id { get; set; }
public string name { get; set; }
public List<Examination_Types> types { get; set; }
public List<Waiting_Room> possible_Waiting_Rooms { get; }
}
枚举:
public enum Examination_Types
{
CR,
CT,
MG,
MR,
NM,
OT,
US,
USM
}
到目前为止的DataTemplate:
<ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:CAS_KAO">
<DataTemplate DataType="{x:Type local:Examination_Room}">
<Border x:Name="examination_room" Margin="10" BorderBrush="Black" BorderThickness="2">
<StackPanel Orientation="Vertical">
<StackPanel Margin="5" Orientation="Horizontal">
<TextBlock FontSize="20" FontWeight="Bold" Text="Examination room: "/>
<TextBlock FontSize="20" FontWeight="Bold" Name="room_name" Text="{Binding name}"/>
</StackPanel>
<Separator/>
<StackPanel Orientation="Horizontal">
<TextBlock Text="Examination Types: "/>
<ItemsControl ItemsSource="{Binding types}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding *****}"/>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
</StackPanel>
</StackPanel>
</Border>
</DataTemplate>
到目前为止,这是我的解决方案,但是正如您在代码中看到的(标有5星)所示,我不知道如何获取枚举的值。 (注意:到目前为止,仅在没有整个检查类型的情况下测试了数据模板)