今天做Silverlight顯示數據的時候,前臺DataGrid 做數據綁定顯示的時候,需要把數據中的換行去掉,這里根據以前對圖片處理的類,構造了一個處理換行的類。
類代碼: 引用接口IValueConverter
using System;
using System.Windows.Data;
namespace 命名空間
{
public class ToPercentConverter : IValueConverter
{
#region 在載入數據的時候將數據去掉回車符
public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
if (value.ToString().Contains("\r"))
return value.ToString().Replace("\r", "");
else
return value;
}
//在頁面上操作的時候,將圖片類型轉換為數據,這里只有在TwoWay的時候才有用
public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
{
return value.ToString().Replace("\r", ""); } #endregion
}
}
}
用戶控件引用: 首先引用:xmlns:local="clr-namespace:命名空間",然后引用資源: 在需要轉換的地方調用Converter={StaticResource ToPercentConverter}如下:
<sdk:DataGrid Margin="0" Grid.Row="2" BorderThickness="1,0,1,1" d:LayoutOverrides="Width" x:Name="Grid_Data" AutoGenerateColumns="False" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" GridLinesVisibility="All" HeadersVisibility="Column" IsEnabled="True" IsReadOnly="True" CanUserReorderColumns="False" FontSize="13.333">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Binding="{Binding Description, Mode=TwoWay,ValidatesOnDataErrors=True, Converter={StaticResource ToPercentConverter}}" Header="信息內容" Width="*" />
</sdk:DataGrid.Columns>
</sdk:DataGrid>
這里只用一個字段為了大家看得清晰。
涉及知識點:IValueConverter接口,引用空間,DataGrid綁定數據,綁定數據(OneTime、OneWay、TowWay)方式。