修改绑定DataGrid的结果

时间:2013-05-27 05:28:11

标签: c# silverlight xaml

我们需要更改Binding Enums的值结果

示例:

public enum Speed
{
   _256kbps,
   _512kbps
}

我们希望将其绑定到DataGrid,结果为256kbps而不使用“ - ”破折号

<sdk:DataGrid SelectedItem="{Binding SelectedBandwidthPlan, Mode=TwoWay}" ItemsSource="{Binding BandwidthPlans}" Margin="10,95,10,33" AutoGenerateColumns="False">
            <sdk:DataGrid.Columns>
                <sdk:DataGridTextColumn Header="ID" Binding="{Binding BandwidthPlanID}"/>
                <sdk:DataGridTextColumn Header="AccountType" Binding="{Binding AccountType}"/>
                <sdk:DataGridTextColumn Header="BandwidthType" Binding="{Binding BandwidthType}"/>
                <sdk:DataGridTextColumn Header="Description" Binding="{Binding Description}"/>
                <sdk:DataGridTextColumn Header="Speed" Binding="{Binding Speed}"/>
                <sdk:DataGridTextColumn Header="Price" Binding="{Binding Price}"/>
            </sdk:DataGrid.Columns>
            <!--Events for datagrid bound to ViewModel-->
            <!--<i:Interaction.Triggers>
                <i:EventTrigger EventName="SelectionChanged">
                    <i:InvokeCommandAction Command="{Binding OnFilterExecute}"></i:InvokeCommandAction>
                </i:EventTrigger>
            </i:Interaction.Triggers>-->
        </sdk:DataGrid>

有办法还是)我们如何修改绑定到数据网格的输出?

1 个答案:

答案 0 :(得分:1)

为此,您需要编写一个转换器类,将枚举转换为用户友好的字符串值。

首先在代码中创建转换器类,然后在前端标记中引用它。

这是一个指导您完成它的教程:http://timheuer.com/blog/archive/2008/07/30/format-data-in-silverlight-databinding-valueconverter.aspx