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

201 篇文章 0 订阅
78 篇文章 0 订阅

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

         < 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"

http://blogs.msdn.com/danielfe/archive/2006/02/08/527628.aspx


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 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、付费专栏及课程。

余额充值