2

我们需要更改绑定枚举的值结果

例子:

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>

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

4

1 回答 1

1

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

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

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

于 2013-05-27T05:43:54.263 回答