在GridView中如何格式化Money型字段?

在GridView中如何格式化Money型字段?

        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False" DataKeyNames="PKID"
            DataMember
="DefaultView" DataSourceID="SqlDataSource1">
            
<Columns>
                
<asp:BoundField DataField="PKID" HeaderText="PKID" InsertVisible="False" ReadOnly="True"
                    SortExpression
="PKID" />
                
                
<asp:TemplateField>
                    
    <HeaderTemplate>
                           amount
</HeaderTemplate>
                        
<ItemTemplate>
                            
<asp:Label ID="txtMoney" Text='<%# Decimal.Parse(DataBinder.Eval(Container.DataItem,"amount").ToString())%>' runat="server" />
                        
</ItemTemplate>
                    
</asp:TemplateField>

                
<asp:BoundField DataField="TestID" HeaderText="TestID" SortExpression="TestID" />
                
<asp:BoundField DataField="testString" HeaderText="testString" SortExpression="testString" />
            
</Columns>
        
</asp:GridView>

这段代码中,
amount为Money型字段,无论如何只能显示成
1234.5600 
而不能显示成
1,234.56

<asp:BoundField DataField="amount" HeaderText="amount" DataFormatString="{0:n2}"  />
                  
<asp:BoundField DataField="amount" HeaderText="amount" DataFormatString="{0:c2}"  />

也不行!
后来在MSDN上找到了答案

<asp:BoundField DataField="amount" HeaderText="amount" DataFormatString="{0:#,###.00}"  HtmlEncode="False" />

关键在于 HtmlEncode="False"
 
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 Yii2-GridView ,你可以通过自定义数据提供者类来支持对非模字段的排序。以下是示例代码: 1. 创建自定义数据提供者类并实现 'sort' 方法: ```php namespace app\models; use yii\data\ActiveDataProvider; use yii\data\Sort; class CustomDataProvider extends ActiveDataProvider { public function sortModels($models, $sort) { $sort->applyOrder($models); return $models; } protected function prepareModels() { $models = parent::prepareModels(); if ($this->sort !== false) { $models = $this->sortModels($models, $this->getSort()); } return $models; } protected function prepareSort() { $sort = parent::prepareSort(); $sort->attributes['extra_field'] = [ 'asc' => ['extra_field' => SORT_ASC], 'desc' => ['extra_field' => SORT_DESC], 'default' => SORT_ASC, 'label' => 'Extra Field', ]; return $sort; } } ``` 2. 在 GridView 使用自定义数据提供者类: ```php $dataProvider = new CustomDataProvider([ 'query' => $query, 'pagination' => [ 'pageSize' => 10, ], ]); <?= GridView::widget([ 'dataProvider' => $dataProvider, 'columns' => [ 'id', 'name', [ 'attribute' => 'extra_field', 'label' => 'Extra Field', ], ], ]); ?> ``` 在上面的示例,自定义数据提供者类 'CustomDataProvider' 继承了 Yii2 的 'ActiveDataProvider' 类,并实现了 'sort' 方法。在该方法,我们使用了传入的 'sort' 对象,对非模字段进行排序。 然后,我们在 'prepareSort' 方法添加了 'extra_field' 属性的排序规则。最后,在 GridView 使用自定义数据提供者类即可。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值