这是我的数据网格:
<asp:DataGrid id="dataGrid1" runat="server">
<Columns>
<asp:HyperLinkColumn DataNavigateUrlField="Valid"
DataTextField="Valid"
HeaderText="Enable / Disable"
DataNavigateUrlFormatString="~\examfilemanager\{0}" />
</Columns>
</asp:DataGrid>
我想要自定义DataTextField
,显示Enable
的值是true
,Disable
如果值是false
,我该怎么办?在HyperLinkColumn中添加此逻辑?谢谢。
答案 0 :(得分:1)
请更改ItemDataBound事件
中的文字protected void dataGrid1_ItemDataBound(object sender, DataGridItemEventArgs e)
{
if (e.Item.Cells[0].Controls.Count > 0)
{
HyperLink hypLnk = (HyperLink)e.Item.Cells[0].Controls[0];
if (hypLnk != null)
{
if (hypLnk.Text == "False")
hypLnk.Text = "Enable";
else
hypLnk.Text = "Disable";
}
}
}
数据网格html
<asp:DataGrid id="dataGrid1" runat="server" OnItemDataBound="dataGrid1_ItemDataBound">
<Columns>
<asp:HyperLinkColumn DataNavigateUrlField="Valid"
DataTextField="Valid"
HeaderText="Enable / Disable"
DataNavigateUrlFormatString="~\examfilemanager\{0}" />
</Columns>
</asp:DataGrid>
答案 1 :(得分:0)
<asp:HyperLink ID="hl1" NavigateUrl='<%# String.Format("uri.aspx?id={0}",Eval("id")) %>'
runat="server">Edit</asp:HyperLink>
如果您更喜欢HyperLink列
,请使用以下内容 <Columns>
<asp:HyperLinkColumn
HeaderText="Enable /Disable"
DataNavigateUrlField="IntegerValue"
DataNavigateUrlFormatString="examfilemanager.aspx?id={0}"
DataTextField="Id"
DataTextFormatString="{0:c}"
Target="_blank"/>
</Columns>