前台最上面添加引用:
xmlns:local="clr-namespace:BLL;assembly=BLL"
前台代码声明:
DateConverter为方法名称,DateConvertMethod为Key,key是ResourceKey使用的名称
<UserControl.Resources>
<local:CommConverter x:Key="commConvertMethod" />
- <local:DateConverter x:Key="DateConvertMethod"/>
<local:IndicatorConverter x:Key="IndicatorIndex"/>
<DataTemplate x:Key="rowIndicatorContentTemplate">
<StackPanel VerticalAlignment="Stretch" HorizontalAlignment="Stretch" >
<TextBlock Text="{Binding RowHandle.Value,Mode=OneWay,Converter={StaticResource ResourceKey=IndicatorIndex}}" TextAlignment="Center" />
</StackPanel>
</DataTemplate>
<DataTemplate x:Key="ReadOnlyHeaderTemplate">
<dxe:CheckEdit IsChecked="{Binding Column.ReadOnly, Mode=TwoWay}" />
</DataTemplate>
</UserControl.Resources>
前台使用:
<dxg:GridColumn Header="检查量" FieldName="planStartDate">
<dxg:GridColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding Value,Converter={StaticResource ResourceKey=DateConvertMethod},ConverterParameter='yyyy-MM-dd'}" Padding="3">
</TextBlock>
</DataTemplate>
</dxg:GridColumn.CellTemplate>
</dxg:GridColumn>
后台代码:
using IMOS.Common.Helpers;
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Data;
namespace IMOS.Common.Converter
{
/// <summary>
/// 时间戳转换为日期格式类
/// </summary>
public class DateConverter : IValueConverter
{
object IValueConverter.Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
DateTime dt = new DateTime();
try
{
dt = TimeHelp.ConvertStringToDateTime(value.ToString());
}
catch (Exception ex)
{
LogProxy.Error("DateConverter 转换方法异常:" + ex.Message);
}
string dataFormat = "";
if (parameter != null && parameter.ToString().Equals("yyyy-MM-dd"))
{
dataFormat = dt.ToString("yyyy-MM-dd");
}
else
{
dataFormat = dt.ToString("yyyy-MM-dd HH:mm:ss");
}
return dataFormat;
}
object IValueConverter.ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
throw new NotImplementedException();
}
}
}