下面的控件来自BoundField,在GridView中使用,如代码下面的标记所示。我的问题是,控件呈现它的DataFormatString的文字值,而不是它的数据值的格式化表示。
public class BoundReportField : BoundField
{
public override string DataFormatString
{
get
{
var baseString = base.DataFormatString;
if (!string.IsNullOrWhiteSpa
我已经在我的DataFormatString派生控件中为BoundField编写了以下覆盖,但是该字段仍然被格式化为普通数字。我假设这是因为格式化代码不是调用DataFormatString属性,而是使用私有_dataField字段。我希望在我的覆盖中设置基本属性,但我想这样做是基于一个声明性FormatType枚举属性,该属性将确定要使用哪个默认格式字符串。我在哪里可以这样做?
public override string DataFormatString
{
get
{
var baseString = base.DataFormatS
有相当多的关于这方面的文章,但我不太理解。
这段代码可以工作,但我必须手动指定一个Id,Id是指向其他几个表的外键:
种子
new Party {Id = "01", startDate = DateTime.Now, endDate = DateTime.Now }
模型
public class Party
{
public string Id { get; set; }
[DisplayFormat(DataFormatString = "{0:d}")]
public DateTime start
public abstract class MyBaseClass
{
[DisplayFormat(DataFormatString = "{0:0.00}")]
public virtual decimal Value
{
get { return 1.23456m; }
}
}
public class MyDerivedClassA : MyBaseClass
{
[DisplayFormat(DataFormatString = "{0:0.0}")]
public override d