Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/91.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将gridview文本更改为超链接_C#_Html_Asp.net_Gridview - Fatal编程技术网

C# 将gridview文本更改为超链接

C# 将gridview文本更改为超链接,c#,html,asp.net,gridview,C#,Html,Asp.net,Gridview,我有一个包含用户联系信息的gridview,我想在其中包含指向他们的在线社交媒体档案的链接,他们的电子邮件所在的位置。因此,如果我的gridview包含姓名、角色和联系人,那么联系人行将包含用户的电子邮件地址,然后是指向他们的社交媒体帐户的链接 这是我迄今为止完成这项工作的代码,我只是不确定如何使文本成为数据绑定时的超链接 protected void Contacts_OnItemDataBound(object sender, GridItemEventArgs e) {

我有一个包含用户联系信息的gridview,我想在其中包含指向他们的在线社交媒体档案的链接,他们的电子邮件所在的位置。因此,如果我的gridview包含姓名、角色和联系人,那么联系人行将包含用户的电子邮件地址,然后是指向他们的社交媒体帐户的链接

这是我迄今为止完成这项工作的代码,我只是不确定如何使文本成为数据绑定时的超链接

protected void Contacts_OnItemDataBound(object sender, GridItemEventArgs e)
        {
            var dataItem = e.Item as GridDataItem;

            if (dataItem != null && dataItem["Contact"].Text == "test@tester.com") 
            {
                dataItem["Contact"].Text = //where I stopped because I figured my text to the hyperlink would go here
            }
        }
这是我的gridview的aspx代码,我使用的是telerik,但想法是一样的:

     <telerik:RadGrid ID="Contacts" runat="server">
            <MasterTableView AutoGenerateColumns="False" BorderColor="White" 
                headerStyle-Font-Bold="True" HeaderStyle-ForeColor="White">
                <Columns>
                    <telerik:GridBoundColumn DataField="AlternateContact" FilterControlAltText="Filter AlternateContact column" HeaderText="ALTERNATE" SortExpression="AlternateContact" UniqueName="AlternateContact"/>                       
                    <telerik:GridBoundColumn DataField="Role" FilterControlAltText="Filter Role column" HeaderText="ROLE" SortExpression="Role" UniqueName="Role"/>                       
                    <telerik:GridBoundColumn DataField="Contact" FilterControlAltText="Filter Contact column" HeaderText="CONTACT" SortExpression="Contact" UniqueName="Contact" />                      
                </Columns>
            </MasterTableView>
            </telerik:RadGrid>


任何关于如何实现这一点的建议都会很有帮助,谢谢

有两种方法可以做到这一点。您可以将
GridBoundColumn
更改为
GridHyperLinkColumn
,也可以将HTML放入
GridBoundColumn

假设您的大部分功能正常工作,更改如下:

protected void Contacts_OnItemDataBound(object sender, GridItemEventArgs e)
    {
        var dataItem = e.Item as GridDataItem;

        if (dataItem != null && dataItem["Contact"].Text == "test@tester.com") 
        {
            dataItem["Contact"].Text = String.Format("<a href=\"mailto:{0}\">{1}</a>", emailAddress, emailAddress);
        }
    }
protectedvoid Contacts\u onitemdata绑定(对象发送方,GridItemEventArgs e)
{
var dataItem=e.项作为GridDataItem;
如果(dataItem!=null&&dataItem[“联系人”]。文本==”test@tester.com") 
{
dataItem[“Contact”]。Text=String.Format(“”,emailAddress,emailAddress);
}
}

查看GridView的.aspx标记可能会对我们有所帮助。@msm8bball添加了aspx代码