如何将 html 图标插入到 datagridview 中

问题描述 投票:0回答:1

我正在尝试将 html 图标放入 datagridview 行中以显示文件夹何时被锁定。当文件夹被锁定时,下面的代码当前仅在 datagridview 行中显示“是”。我想用 html 图标替换“是”。

// Creating a new DataTable.
DataTable custTable = new DataTable("folders");
DataColumn dtaColumn;
DataRow myDataRow;

// Create id column
dtaColumn = new DataColumn();
dtaColumn.DataType = typeof(string);
dtaColumn.ColumnName = "Type";
dtaColumn.Caption = "Type";
custTable.Columns.Add(dtaColumn);

dtaColumn = new DataColumn();
dtaColumn.DataType = typeof(String);
dtaColumn.ColumnName = "Description";
dtaColumn.Caption = "Description";
dtaColumn.ReadOnly = false;
dtaColumn.Unique = false;
custTable.Columns.Add(dtaColumn);

dtaColumn = new DataColumn();
dtaColumn.DataType = typeof(String);
dtaColumn.ColumnName = "Size";
dtaColumn.Caption = "Size";
dtaColumn.ReadOnly = false;
dtaColumn.Unique = false;
custTable.Columns.Add(dtaColumn);

dtaColumn = new DataColumn();
dtaColumn.DataType = typeof(String);
dtaColumn.ColumnName = "Locked";
dtaColumn.Caption = "Locked";
dtaColumn.ReadOnly = false;
dtaColumn.Unique = false;
custTable.Columns.Add(dtaColumn);

dtaSet = new DataSet();
dtaSet.Tables.Add(custTable);

string[] subdirectoryEntries = Directory.GetDirectories(Server.MapPath(pathToFollow));

//creating rows
foreach (string folderPath in subdirectoryEntries)
{   
    myDataRow = custTable.NewRow();

    myDataRow["Type"] = "Folder";
    myDataRow["Description"] = Path.GetFileName(folderPath);
    myDataRow["Size"] = "NA";
    
    //checking if folder is locked
    for(int i = 0; i<pathLock.Count; i++)
    {
        if (pathLock[i] == folderPath)
        {
            myDataRow["Locked"] = "Yes"; //Place to insert the icon
        }
    }
    custTable.Rows.Add(myDataRow);
}

html 图标的代码

<span class="fa fa-lock"></span>

这就是我当前代码的样子。

c# asp.net datagridview
1个回答
0
投票

使用gridview的rowdatabound事件:

void gridview_rowdatabound(...)
{
    if (e.row.rowtype == datacontrolrowtype.datarow)
    {
        if (e.row.cells[2].text == "Locked")
        {
            e.row.cells[2].text = "<span class='fa fa-lock'></span>";
        }
    }
}

假设

Locked
的列索引为2。

© www.soinside.com 2019 - 2024. All rights reserved.