2014-03-03 68 views
0

我有一個小問題DataGrid中綁定列替換()

我有一個DataGrid

和我想要做的

<DataGrid> 
    <DataGrid.Columns> 
    <DataGridTextColumn Binding="{Binding **replace(Code_pr,'_', 'PDT')**}" Width="100" Header="Code product"/> 
    </DataGrid.Columns> 
</DataGrid> 

任何一個有解決方案,請

+3

不在XAML,但這是什麼是轉換器。實現IValueConverter接口並在那裏集成替換邏輯。你會在這裏找到很多關於轉換器的信息。或者你需要進一步的幫助? – gomi42

回答

0

你可以爲此使用ValueConverter

這將looke是這樣的:

public class ReplaceConverter : IValueConverter 
{ 
    public object Convert(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     return value.ToString().Replace('_','PDT'); 
    } 

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture) 
    { 
     return value.ToString().Replace('PDT','_'); 
    } 
} 

添加它作爲你的XAML的資源:

<src:ReplaceConverter x:Key="replaceConverter"/> 

更改綁定:

<DataGridTextColumn Binding="{Binding Path=Code_pr, Converter={StaticResource replaceConverter}}" Width="100" Header="Code product"/> 
+0

其oK,非常感謝 – nasrsoft