C# 哪个控件执行类型转换:GridView还是数据源控件?
假设我们将GridView数据绑定到ObjectDataSource控件,然后执行查询 A) 我知道显示的GridView字段是String类型的,但是GridView是否也知道底层数据源值是什么类型的(对于特定的GridView列)?C# 哪个控件执行类型转换:GridView还是数据源控件?,c#,.net,asp.net,ado.net,C#,.net,Asp.net,Ado.net,假设我们将GridView数据绑定到ObjectDataSource控件,然后执行查询 A) 我知道显示的GridView字段是String类型的,但是GridView是否也知道底层数据源值是什么类型的(对于特定的GridView列)? *因此,若数据源将用一堆整数填充GridView,那个么这些整数必须先转换为字符串,然后才能在GridView中显示。哪个控件将执行转换,GridView还是ObjectDataSource/SqlDataSource控件? B) 无论是GridView还是
*因此,若数据源将用一堆整数填充GridView,那个么这些整数必须先转换为字符串,然后才能在GridView中显示。哪个控件将执行转换,GridView还是ObjectDataSource/SqlDataSource控件?
B) 无论是GridView还是ObjectDataSource执行转换,转换是如何执行的?只需在对象上调用ToString()?
thanx格式设置(包括转换)由GridView完成。通过查看每列DataFormatString属性可以看到这一点。这使用常规的.NET复合格式,请参见例如string.Format()或Console.Writeline()。它默认为ToString()。但是DataFormatString将接受日期时间列的dd-mm-yyyy。以下是绑定列控件的代码(通过反射器):
- this.formatting:格式字符串, 这就是亨克所解释的
- dataValue:一个对象变量,它 是绑定属性的值
if (this.formatting.Length == 0)
{
return dataValue.ToString();
}
return string.Format(CultureInfo.CurrentCulture, this.formatting, new object[] { dataValue });