大家好:
    我做一个web查询系统,数据用datagrid显示,我的datagrid是动态绑定的,从oracle8i数据库中查询数据。
    1、datagrid的数据是从dataset中取,日期默认显示都是2004-9-13 13:03:33,我不想让她显示后面的时间,希望显示成2004-9-13,由于是动态绑定,datagrid要显示不同表的数据,所以我不能在sql语句中用to_char()函数(因为是Select * from ),也不能通过模板列(不同的表不知道日期字段是哪个),希望大家给个设置方法,谢谢。    2、数据显示问题:怎样控制单元格的格式,有些字段内容较多,折行显示把datagrid撑的特别难看,我希望不折行,怎样设置,我看到有些人说:给每个单元格套上一个<div>
<div nowrap style='text-overflow:clip;overflow:hidden;width:" + parseInt(oTd.style.width) + "'>" + oTd.innerHTML + "</div>";
再在调整表格列宽时,再调整div.style.width即可。
我不知道具体在后台代码中怎么写,希望大家说的具体点,解决完马上给分。

解决方案 »

  1.   

    1.在写录入的SQL语句上把日期的格式定义位 yyyy-mm-dd
      

  2.   

    1:在datagrid的属性生成器里,时间列的格式化字符串写:{0:d}就好了
    2:如果用width控制,可以这样width="<%=myVar%>"
    在c#代码中,申明这个protected或public的myVar,并给它值
      

  3.   

    以上两位兄弟的前提条件是要保证这个日期字段是System.DateTime类型.
      

  4.   

    1.{0:d)
    不确定那个是日期字段?
    那就只好做个函数判断一下了
    2.
    DataBound中
    <DIV class="TA" style="OVERFLOW: auto; WIDTH: 750px">
    e.Item.Cells[1].Text = "<nobr>" + e.Item.Cells[1].Text + "</nobr>";
      

  5.   

    同意樓上的。datagrid列裡支持formatstring的。試試。加個正則表達式。
      

  6.   

    在属性生成器中都可以解决
    格式问题:{0:yyyy-MM-dd}
    单元格设置成不自动换行就可以了
      

  7.   

    wangrenda(浪人) 已经说得很全了