请参考这个网址为您解决问题
https://www.devexpress.com/Support/Center/Example/Details/E308
改变你填入电网逻辑
ASPX:
<dx:ASPxGridView ID="ASPxGridView1" runat="server"></dx:ASPxGridView>
CS
protected void Page_Init(object sender, EventArgs e)
{
ASPxGridView1.KeyFieldName = "ID";
ASPxGridView1.DataSource = GetData();
if (!IsPostBack && !IsCallback)
{
PopulateColumns();
ASPxGridView1.DataBind();
}
}
public DataTable GetData()
{
DataTable Table = new DataTable();
Table.Columns.Add("ID", typeof(int));
Table.Columns.Add("ItemName", typeof(string));
Table.Columns.Add("ItemValue", typeof(string));
Table.Rows.Add(1, "A","AA");
Table.Rows.Add(2, "B","BB");
return Table;
}
public void PopulateColumns()
{
GridViewDataTextColumn colID = new GridViewDataTextColumn();
colID.FieldName = "ID";
ASPxGridView1.Columns.Add(colID);
GridViewDataTextColumn srk = new GridViewDataTextColumn();
srk.FieldName = "ItemValue";
ASPxGridView1.Columns.Add(srk);
GridViewDataHyperLinkColumn colItemName = new GridViewDataHyperLinkColumn();
colItemName.FieldName = "ItemValue";
colItemName.PropertiesHyperLinkEdit.NavigateUrlFormatString = "~/details.aspx?Device={0}";
colItemName.PropertiesHyperLinkEdit.TextFormatString = "{0}";
colItemName.PropertiesHyperLinkEdit.TextField = "ItemName";
ASPxGridView1.Columns.Add(colItemName);
}
这里如果你要根据多个列中显示超链接文本,然后HyperlinkColumn不实施正确的方法列ITEMNAME指项目值作为URL字符串PARAMS
感谢您的答复,但我不知道如何解决我的问题。我相信这个例子只是格式化了单元格的当前值。如果列0的行0的字符串为“value1”,列3的行0的字符串为“value2”,那么如何格式化第3列的url以包含列0的值。在这个例子中,列3行0将具有链接:“〜/ details.aspx?Device = value1”。 – DMC
我已根据您的需要更改我的代码,我希望这可能有所帮助。 –