Har*_*ald 54 c# wpf datagrid date-formatting
我已经搜索了stackoverflow的解决方案并发现了这个:
我的问题是,我从SQL-Server-Database中加载了一些数据,并希望在DataGrid中的WPF应用程序中显示它们.这非常有效.我唯一要改变的是日期列的格式为"DD/MM/YYYY HH:MM:SS",我希望有"DD.MM.YYYY".好的,然后我看了下面的链接并在我的程序中尝试了这个:
<Grid Width="648" Height="263">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="172*" />
<ColumnDefinition Width="90*" />
<ColumnDefinition Width="386*" />
</Grid.ColumnDefinitions>
<DataGrid Name="dgBuchung" Height="213" HorizontalAlignment="Left" Margin="30,16,0,0" VerticalAlignment="Top" Width="595" AutoGenerateColumns="True" ItemsSource="{Binding}" Grid.ColumnSpan="3" Foreground="Black" BorderBrush="#FF688CAF" Opacity="1" Background="White" BorderThickness="1" >
<!-- <ab:DataGridTextColumn Header="Fecha Entrada" Width="110"
Binding="{Binding date, StringFormat={}{0:dd/MM/yyyy}}" IsReadOnly="True" />
-->
</DataGrid>
</Grid>
Run Code Online (Sandbox Code Playgroud)
out评论部分是我的解决方案,但它抛出XMLParseException.首先,使用AutoGenerateColumns时这种解决方案是否可行?如果不是,我怎么能尝试处理这个?如果是,上面的代码有什么问题?
编辑: 我的问题没有解决,因为我决定不重建我的应用程序,没有AutoGenerateColumns = true的解决方案?
ice*_*bat 104
不要忘记使用DataGrid.Columns,所有列都必须在该集合中.在我的项目中,我的格式有点不同:
<tk:DataGrid>
<tk:DataGrid.Columns>
<tk:DataGridTextColumn Binding="{Binding StartDate, StringFormat=\{0:dd.MM.yy HH:mm:ss\}}" />
</tk:DataGrid.Columns>
</tk:DataGrid>
Run Code Online (Sandbox Code Playgroud)
使用AutoGenerateColumns,您将无法控制格式,因为DataGird将添加自己的列.
Mar*_*man 82
这里的聚会很晚,但万一其他人偶然发现这个页面......
您可以通过在XAML中设置AutoGeneratingColumn处理程序来完成此操作:
<DataGrid AutoGeneratingColumn="OnAutoGeneratingColumn" ..etc.. />
Run Code Online (Sandbox Code Playgroud)
然后在后面的代码中执行以下操作:
private void OnAutoGeneratingColumn(object sender, DataGridAutoGeneratingColumnEventArgs e)
{
if (e.PropertyType == typeof(System.DateTime))
(e.Column as DataGridTextColumn).Binding.StringFormat = "dd/MM/yyyy";
}
Run Code Online (Sandbox Code Playgroud)
小智 14
如果您的绑定属性是DateTime,那么您只需要
Binding={Property, StringFormat=d}
Run Code Online (Sandbox Code Playgroud)
小智 8
Binding="{Binding YourColumn ,StringFormat='yyyy-MM-dd'}"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
93338 次 |
| 最近记录: |