Pregunta

Puede alguien por favor me explique cómo puedo incluir una BoundField (Emp_ID) a la HyperLinkField (IDNumber) en un código generado GridView con C #? Para que la cadena url sería '../Pages/Home.aspx?Emp_ID=(Emp_ID)'>(IDNumber)</a>

Gracias

Fragmento de código a continuación:

IDColumn.DataField = "Emp_ID";
IDColumn.HeaderText = "Emp_ID";
string[] id = new string[] { "Emp_ID" };
IDColumn.Visible = false;
grid.Columns.Add(IDColumn);

hyperlinkedColumn.DataTextField = "IDNumber";
hyperlinkedColumn.HeaderText = "ID No.";
hyperlinkedColumn.DataNavigateUrlFields = id;
hyperlinkedColumn.DataTextFormatString = "<a href='../Pages/Home.aspx?Emp_ID='>{0}</a>";
hyperlinkedColumn.Visible = true;
grid.DataKeyNames = id;
grid.Columns.Add(hyperlinkedColumn);
¿Fue útil?

Solución

Lo que vas a querer hacer es fijar el lugar de DataNavigateUrlFormatString DataTextFormatString.

string[] id = new string[] { "Emp_ID" }; 

HyperLinkField hyperlinkedColumn = new HyperLinkField();
hyperlinkedColumn.DataTextField = "IDNumber";
hyperlinkedColumn.HeaderText = "ID No.";
hyperlinkedColumn.DataNavigateUrlFields = id;
hyperlinkedColumn.DataNavigateUrlFormatString = "../Pages/Home.aspx?Emp_ID={0}";
hyperlinkedColumn.Visible = true;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top