C# 使用整数值将枚举类型传递给转换器
因此,我试图制作一个通用的C# 使用整数值将枚举类型传递给转换器,c#,wpf,xaml,C#,Wpf,Xaml,因此,我试图制作一个通用的IValueConverter,我可以在DataGrid绑定中使用它,在绑定中我将发送一个整数值和一个枚举类型,以将该整数转换为该枚举类型,并从资源文件返回一个字符串值。但我不能做的是将枚举类型传递给转换器,因为我无法在xaml代码中引用我的枚举。这是我尝试过的参考: 我想引用(UserStatus),它位于命名空间ERPProject.\u AppControl.\u BAL.\u Core.\u Constants中名为ERPConstants的类中 我在代码中尝试
IValueConverter
,我可以在DataGrid
绑定中使用它,在绑定中我将发送一个整数值和一个枚举类型,以将该整数转换为该枚举类型,并从资源文件返回一个字符串值。但我不能做的是将枚举类型传递给转换器,因为我无法在xaml代码中引用我的枚举。这是我尝试过的参考:
我想引用(UserStatus
),它位于命名空间ERPProject.\u AppControl.\u BAL.\u Core.\u Constants
中名为ERPConstants
的类中
我在代码中尝试了这一点:
<UserControl x:Class="ERPProject._AppUI._Users.UsersControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:materialDesign="http://materialdesigninxaml.net/winfx/xaml/themes"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:Constants="clr-namespace:ERPProject._AppControl._BAL._Core._Constants">
<Grid>
<DataGrid Name="dgUsers" Grid.Row="1">
<DataGrid.Columns>
<DataGridTemplateColumn Header="Status" Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Label HorizontalAlignment="Left" Content="{Binding Status, Converter={StaticResource EnumConverter}, ConverterParameter={x:Type Constants:UserStatus}}"></Label>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
</DataGrid.Columns>
</DataGrid>
</Grid>
</UserControl>
但是它说
UserStatus
在名称空间中不存在。我还试图在上面的xmlns:Constants
中包含ERPConstants
,但没有成功。有人能帮上忙吗?因此,经过一些尝试,我自己在这里得到了一个答案,适用于可能有相同问题的任何人
我将我的枚举引用为以下常量:ERPStants+UserStatus
<DataGridTemplateColumn Header="Status" Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Label HorizontalAlignment="Left" Content="{Binding Status, Converter={StaticResource EnumConverter}, ConverterParameter={x:Type Constants:ERPConstants+UserStatus}}"></Label>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>