我的情况是,我目前有一个HyperLinkColumn控件,我想修改它以使Label或简单文本出现在与超链接相同的列中。我该如何实现这一目标?有什么想法吗?
答案 0 :(得分:1)
如果这是DataGrid,那么您可以处理ItemCreated事件并添加添加新控件的代码。例如:
<asp:DataGrid ... OnItemCreated="OnMyDataGridItemCreated" ... />
private void OnMyDataGridItemCreated(object sender, DataGridItemEventArgs e) {
Label textLabel = new Label();
textLabel.Text = "Hello!";
e.Item.Cells[3].Controls.Add(textLabel);
// Instead of "3" you might need to pick a different column
}
答案 1 :(得分:0)
如果您使用的是GridView,则可以使用TemplateField。在那里,你可以有一个超链接和一个标签,它们都是数据绑定。在OnRowDataBound()事件中,您可以决定用户可以看到两个控件中的哪一个。
修改强> 我写了一篇关于将数据绑定到GridView的不同方法的文章,并决定添加一个HyperLink和Label的示例,其属性在RowDataBound-Event中设置:http://www.tomot.de/en-us/article/7/asp.net/gridview-overview-of-different-ways-to-bind-data-to-columns