【问题标题】:gridview using datatable in asp.net is not show every column在asp.net中使用数据表的gridview不显示每一列
【发布时间】:2017-12-06 09:00:57
【问题描述】:

这是我的 aspx 代码:

  <div class="box-body">

        <asp:GridView ID="gvSms" runat="server" CssClass="table table-bordered table-striped">
        </asp:GridView>
    </div>

这是我的cs代码:

if(!Page.IsPostBack)
        {
            Master.pageHeaderTitle = "Employee Sms";
            DataTable dt = new DataTable();
            dt.Columns.Add("Employee Code");
            dt.Columns.Add("Employee Name");
            dt.Columns.Add("Mobile No");
            dt.Columns.Add("Message");
            dt.Columns.Add("Creating Date");
            var db = new HRContext();
            var data=db.EmployeeSms.Where(d => d.HasRead == false).OrderByDescending(d => d.Id).ToList();
            if(data!=null)
            {
                foreach(var item in data)
                {
                    string mobile = item.EmployeeMobile.TrimStart('8').TrimStart('8');
                    var emp = db.Employee.Where(d => d.OfficePhone == mobile).FirstOrDefault();
                    string code = "";
                    string name = "";
                    if(emp!=null)
                    {
                        code = emp.eployeId;
                        name = emp.firstName + " " + emp.lastName;
                    }
                    dt.Rows.Add(code,name,item.EmployeeMobile,item.SMS,item.CreatedAt);
                }
            }

            gvSms.DataSource = dt;
            gvSms.DataBind();

        }

使用此代码创建日期列未显示,因为一行中的消息很长。如果消息列发表评论,则显示。那么我该如何解决这个问题?是使消息列多行还是使gridview可滚动。我试过但不能。 任何形式的帮助都是可观的,并在此先感谢。

【问题讨论】:

  • 您在消息列中的最大字符串长度是多少?另外,“我试过但不能”是什么意思?是否无法显示可滚动的gridview 甚至无法显示日期列的可滚动网格?
  • 感谢您的评论@SivaGopal。我试图使消息列多行,但我无法做到。完整的消息显示在一行中,结果下一列不可见。字符串长度在 sql 表中定义 varchar(255)。
  • 您能否发布一些您的问题的示例屏幕截图。您通过 css/aspx 设置的任何宽度以及包含此网格的任何面板。

标签: c# asp.net gridview datatable


【解决方案1】:

首先你应该在数据库中将日期列的数据类型设置为DateTimevarchar,然后使用:

string date = DateTime.Now.ToString("d/MM/yyyy");
dt.Rows.Add(code,name,item.EmployeeMobile,item.SMS,date);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-01-18
    • 1970-01-01
    • 2023-03-22
    • 2021-08-21
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-12-08
    相关资源
    最近更新 更多