¿Cómo se usan las tags ASP.NET <% = en los atributos de control del servidor?

Esto funciona:

<span value="" /> 

Esto no funciona:

 <asp:Label Text="" runat="server" /> 

¿Porqué es eso?

¿Cómo puedo hacer que el segundo caso funcione correctamente, es decir, establecer el texto de la etiqueta en el valor de la variable “Texto”?

No estoy seguro de cómo marcar esto como tal, pero este es un poco duplicado. Ver este hilo

No creo que incrustar código en tu marca haga que tu marcado sea más claro o más elegante.

Usar expresiones de enlace de datos

  

Código detrás,

 protected void Page_Load(object sender, EventArgs e){ DataBind(); } 

Puedes hacerlo

  <%= variable%> 

está comstackndo en tiempo de ejecución y convirtiendo a tags html. Puede establecer texto con código subyacente o así:

  <% Text1.Text = this.Text;%> 

UPD: Parece que mi variante no funciona, esto es mejor:

 protected void Page_Load(object sender,EventArgs e) { Text1.Text = this.Text; } 

En mi código, estoy usando algo como esto fácilmente, pero en el control de datos como la plantilla del elemento ListView

   

Pero cuando traté de usar fuera del control de datos utilizando <% # ..%>, simplemente no funciona.

Puedes hacerlo fácilmente con

 My href 

Pero para los controles del servidor y fuera del control de datos. Necesitamos llamar a DataBind () en el evento pageload explícitamente

  

Deberá establecer el valor del control del servidor en el código

En primer lugar, asigne una ID al control de la etiqueta para que pueda acceder al control

  

Luego, en su función Page_Load, establezca el valor del campo ‘Texto’ de sus tags

 protected void Page_Load(object sender, EventArgs e) { myLabel.Text = 'Whatever you want the label to display'; } 

Esta función estará en su código detrás del archivo o, si no está utilizando el código detrás del modelo, dentro de su página aspx necesitará

  

Buena suerte.