Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/267.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 奇怪的自动日期格式数据网格_C#_Wpf - Fatal编程技术网

C# 奇怪的自动日期格式数据网格

C# 奇怪的自动日期格式数据网格,c#,wpf,C#,Wpf,我在Datagrid专栏中得到了这个XAML: <DataGridTemplateColumn SortMemberPath="LiefDat" Width="110" x:Name="columnLieferDatum" > <DataGridTemplateColumn.Header > <Grid>

我在Datagrid专栏中得到了这个XAML:

<DataGridTemplateColumn SortMemberPath="LiefDat"  Width="110" x:Name="columnLieferDatum" >
                                <DataGridTemplateColumn.Header >
                                    <Grid>
                                        <TextBlock Text="Lieferdatum"/>
                                    </Grid>
                                </DataGridTemplateColumn.Header>
                                <DataGridTemplateColumn.CellTemplate>
                                    <DataTemplate>
                                        <Label Width="110" x:Name="lblLiefDat" Content="{Binding LiefDat, StringFormat=\{0:dd.MM.yy HH:mm:ss\}}"/>
                                        <DataTemplate.Triggers>
                                            <DataTrigger Binding="{Binding IsSelected, RelativeSource={RelativeSource AncestorType=DataGridRow}}"
                                                                   Value="True">
                                                <Setter TargetName="lblLiefDat" Property="Foreground" Value="white" />
                                            </DataTrigger>
                                        </DataTemplate.Triggers>
                                    </DataTemplate>
                                </DataGridTemplateColumn.CellTemplate>
                            </DataGridTemplateColumn>

在XAML中这样添加它是正确的方法

您可以这样做。 制作DateTimeConverter,类似于:

public class DateTimeConvertor : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        var dateTime = (DateTime?)value;

        if (dateTime.HasValue)
        {
            return dateTime.Value.ToString("dd.MM.yyyy");
        }
        return value;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}
将其介绍给Window/UserControlResources:

<Window.Resources>
    <local:DateTimeConvertor x:Key="DateTimeConvertor" />
</Window.Resources>

你可以这样做。 制作DateTimeConverter,类似于:

public class DateTimeConvertor : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        var dateTime = (DateTime?)value;

        if (dateTime.HasValue)
        {
            return dateTime.Value.ToString("dd.MM.yyyy");
        }
        return value;
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }
}
将其介绍给Window/UserControlResources:

<Window.Resources>
    <local:DateTimeConvertor x:Key="DateTimeConvertor" />
</Window.Resources>
如果你设定

StringFormat=\{0:dd.MM.yy HH:mm:ss\}
然后给出了一种硬编码字符串格式。尝试以下方法:

StringFormat=d
然后动态生成格式。下面是一个小列表,其中有一些示例:

但这要求您使用全局语言设置(就像您已经做的那样)。

如果您设置

StringFormat=\{0:dd.MM.yy HH:mm:ss\}
然后给出了一种硬编码字符串格式。尝试以下方法:

StringFormat=d
然后动态生成格式。下面是一个小列表,其中有一些示例:


但这要求您使用全局语言设置(就像您已经做的那样)。

您是否将应用程序的区域性设置为“de de”?我将
Thread.CurrentThread.CurrentCulture=new CultureInfo(“de”);Thread.CurrentThread.CurrentUICulture=新文化信息(“de”)初始化组件()后,是否将应用程序的区域性设置为“de de”?我设置
Thread.CurrentThread.CurrentCulture=new CultureInfo(“de de”);Thread.CurrentThread.CurrentUICulture=新文化信息(“de”)初始化后组件()未测试,但请确保此解决方案有效,谢谢!我的意思是我的解决方案,没有冒犯:)不要担心:)你得到的反馈越多,学习方法的选择就越多:)未经测试,但也确保此解决方案有效,谢谢!我的意思是为了我的解决方案,没有冒犯:)不要担心:)你得到的反馈越多,学习方法的选择就越多:)