我有一个包含链接网址及其各自显示文本的数据库。我需要在gridview中显示它们的显示字符串之前检查它们是否坏了。
我正在使用SqlDatasource
,有没有办法处理记录并使用自定义HTML标记在使用SqlDataSource
时显示它们?
我正在尝试使用OnSelected
SqlDatasource
事件,但无法使用它。
答案 0 :(得分:0)
我相信你要做的是确保超链接在放入数据网格之前是有效的。为此,您需要在网格上订阅RowDataBound事件。从那里,您可以运行代码来评估您的URL。这是一个快速示例,它将检查以确保URL字段不是空字符串:
protected void selectedBookList_RowDataBound(object sender, GridViewRowEventArgs e)
{
if ((e.Row != null) && (e.Row.RowType == DataControlRowType.DataRow))
{
string test = DataBinder.Eval(e.Row.DataItem, "URL").ToString();
if (test.Length == 0)
{
e.Row.Cells[3].Visible = false;
}
else
{
e.Row.Cells[3].Visible = true;
}
}
}
您可以检查链接是否已死,而不是测试以确保长度等于零。一旦你对它进行了评估,就可以像我在这里一样隐藏单元格,或者你可以修改链接,放入通用链接等等。