Devxpress 网格货币格式



我正在使用Devxpress v13.1,不允许升级它。

我正在尝试从数据集渲染 devxpress 网格。我希望 $400.0000 显示为 $400.00 并且无法让它工作。

我有以下代码:

public MainWindow{
 DataSet TransactionList = GetDataFromXML();// Loads XML to DS
            TransactionGrid.ItemsSource = TransactionList.Tables[0];
            TransactionGrid.CustomColumnDisplayText += TransactionGrid_CustomColumnDisplayText; 
        }
void TransactionGrid_CustomColumnDisplayText(object sender, DevExpress.Xpf.Grid.CustomColumnDisplayTextEventArgs e)
        {
            if (e.Column.FieldName == "Amount1")
            {
                //e.Column.DisplayTemplate =
               e.DisplayText = String.Format("{0:0.00}", e.Value);
            }
        }

XAML 代码:

    <dxg:GridControl Name="TransactionGrid"        HorizontalAlignment="Left" Height="Auto" Width="Auto" >
                <dxg:GridControl.View >
                    <dxg:TableView AllowEditing="False"></dxg:TableView>
                </dxg:GridControl.View>
                <dxg:GridControl.Columns>
                    <dxg:GridColumn FieldName="Amount1" Header="Amount1" Width="80" >                  
                    </dxg:GridColumn>
           </dxg:GridControl.Columns>
            </dxg:GridControl
>

我使用 TGrid_CustomColumnDisplayText 事件来实现结果。尝试实现 StringFormat="c2" 在 xaml 级别不起作用。我不得不在 xaml 页面的构造函数中调用下面的语句。

TGrid.CustomColumnDisplayText += TGrid_CustomColumnDisplayText; 

活动如下- 无效Tgrid_CustomColumnDisplayText(对象发送方, DevExpress.Xpf.Grid.CustomColumnDisplayTextEventArgs e( { CultureInfo ciUa = new CultureInfo("en-US"(; if (e.Column.FieldName == "Amount"( { e.DisplayText = String.IsNullOrEmpty(e.Value.ToString((( ?String.Empty : String.Format(ciUsa, "{0:c2}", Convert.ToDecimal(e.Value((; }

        } 

最新更新