【发布时间】:2009-04-02 05:57:51
【问题描述】:
我有一个可以显示两个不同报告的报告页面。所以我有一个 GridView,我的 aspx 页面上没有列。我在按钮单击事件处理程序中将 4 个 BoundFields 添加到 GridView。第一列是我需要为其中一个报告设置宽度的列(我用来添加此列的代码如下)。
gvReport.Columns.Clear();
BoundField bf1 = new BoundField();
...
if (ddReportType.SelectedValue == "full") {
bf1.HeaderText = "Facility";
bf1.DataField = "Facility";
bf1.ItemStyle.Wrap = true;
bf1.ItemStyle.Width = 150;
bf1.Visible = true;
gvReport.Columns.Add(bf1);
...
问题是这一列中有一行具有 SHA512 哈希值。由于中间没有空间,gridview 不会包裹它(我认为这就是正在发生的事情,无论如何)!所以我想我会在 OnRowDataBound 事件中捕获此列,并在哈希中间添加一个空格,以便它可以换行,但我不知道如何引用 BoundField。没有 ID 属性。有人有建议吗?是关于如何引用 BoundField,还是以其他方式让它很好地显示?
我最初在 aspx 文件中有列并尝试使用:
gvReport.Columns[0].ItemStyle.Width = 150;
gvReport.Columns[0].ItemStyle.Wrap = true;
但这也没有用。这很令人沮丧!
【问题讨论】: