-2

週次レポートを表示するために、コード ビハインドからテーブルを作成しています。正常に動作しています。しかし、テーブルセルのデータが大きい場合、問題が発生します。データがテーブルのセルに収まるほど大きい場合は、セルにリンクを作成し、onclick でセルのデータ全体をポップアップに表示します。またはこのようなもの。オーバーフロースクロールを試してみましたが、見栄えが悪いです。テーブルを生成する元のコードは次のとおりです:-

private void TaskTable(TaskSearch search)
{

    _empList = _objDBL.GetEmpList(ddlCategory.SelectedValue);
    Label heading = new Label();
    heading.Text ="Task Report from "+search.FromDate.ToString("dd MMM,yyyy")+" to "+search.ToDate.ToString("dd MMM,yyyy");
    heading.Attributes.Add("class", "weekheading");

    divTaskTable.Controls.Add(heading);
    Session["Lable"] = heading;
    Table table = new Table();
    TableRow row;
    TableCell cell;
    TableHeaderRow headerRow = new TableHeaderRow();
    TableHeaderCell headerCell;
    table.CssClass = "grid-view";

    headerCell = new TableHeaderCell();
    headerCell.Text = "Emp Name";
    headerRow.Cells.Add(headerCell);
    headerCell = new TableHeaderCell();
    headerCell.Text = "Monday";
    headerRow.Cells.Add(headerCell);
    headerCell = new TableHeaderCell();
    headerCell.Text = "Tuesday";
    headerRow.Cells.Add(headerCell);
    headerCell = new TableHeaderCell();
    headerCell.Text = "Wednesday";
    headerRow.Cells.Add(headerCell);
    headerCell = new TableHeaderCell();
    headerCell.Text = "Thursday";
    headerRow.Cells.Add(headerCell);
    headerCell = new TableHeaderCell();
    headerCell.Text = "Friday";
    headerRow.Cells.Add(headerCell);
    headerCell = new TableHeaderCell();
    headerCell.Text = "Saturday";
    headerRow.Cells.Add(headerCell);

    table.Rows.Add(headerRow);
    for (int i = 0; i < _empList.Count; i++)
    {
        int m=1;
        row = new TableRow();
        cell = new TableCell();
        cell.Text = _empList[i].Name;
        row.Cells.Add(cell);
        search.EmpId = _empList[i].Id;
        _taskList = _objDBL.GetSearchedTaskList(search);
        string[] months = System.Globalization.DateTimeFormatInfo.InvariantInfo.DayNames;

        for (int j = 0; m < months.Count() && j<_taskList.Count; m++)
        {
            if (_taskList[j].Date.DayOfWeek.ToString().Equals(months[m]))
            {
                cell = new TableCell();
                cell.Text = _taskList[j++].TodaysTask;
                row.Cells.Add(cell);
            }
            else
            {
                cell = new TableCell();
                cell.Text = "-";
                row.Cells.Add(cell);
            }

        }
        for (; m < 7; m++)
        {
            cell = new TableCell();
            cell.Text = "-";
            row.Cells.Add(cell);
        }
        table.Rows.Add(row);
    }
    divTaskTable.Controls.Add(table);
    Session["Table"] = table;
} 
4

1 に答える 1

2

これは私たちのサイトで製品の説明を行う方法です。テキストが 75 文字を超えると、短いテキストが生成され、完全な説明のリンクが生成されます。コードに合わせて変更できると確信しています。私のサイトは VB.NET であり、このコードは gridview コントロール用ですが、要点はわかります。

 If descLength >= 75 then
      CType(row.FindControl("shortDesc"), Label).Text = CType(row.FindControl("labelDesc"), Label).Text.Substring(0, 74) & "... <a href='/detailsfp.aspx?prodid=" & productIDM & "'>Full Description</a>"
 End If
于 2012-10-18T11:27:51.523 に答える