2010-03-22 43 views
6

tengo ListView que tiene la siguiente EditItemTemplate:¿Cómo puedo formatear el texto en un TextBox con datos?

<EditItemTemplate> 
    <tr style=""> 
     <td> 
      <asp:LinkButton ID="UpdateButton" runat="server" CommandName="Update" Text="Update" /> 
      <asp:LinkButton ID="CancelButton" runat="server" CommandName="Cancel" Text="Cancel" /> 
     </td> 
     <td> 
      <asp:TextBox ID="FundingSource1TextBox" runat="server" Text='<%# Bind("FundingSource1") %>' /> 
     </td> 
     <td> 
      <asp:TextBox ID="CashTextBox" runat="server" Text='<%# Bind("Cash") %>' /> 
     </td> 
     <td> 
      <asp:TextBox ID="InKindTextBox" runat="server" Text='<%# Bind("InKind") %>' /> 
     </td> 
     <td> 
      <asp:TextBox ID="StatusTextBox" runat="server" Text='<%# Bind("Status") %>' /> 
     </td> 
     <td> 
      <asp:TextBox ID="ExpectedAwardDateTextBox" runat="server" Text='<%# Bind("ExpectedAwardDate","{0:MM/dd/yyyy}) %>' onclientclick="datepicker()" /> 
     </td> 
    </tr> 
</EditItemTemplate> 

me gustaría dar formato a la ExpectedAwardDateTextBox por lo que muestra una fecha y hora corta, pero no he encontrado una manera de hacer esto sin entrar en el código subyacente. En la plantilla de artículos que tengo la línea siguiente para formatear la fecha que aparece en el lable:

<asp:Label ID="ExpectedAwardDateLabel" runat="server" Text='<%# String.Format("{0:M/d/yyyy}",Eval("ExpectedAwardDate")) %>' /> 

Y me gustaría encontrar un método similar que ver con la insertItemTemplate.

Respuesta

6

Usted puede utilizar la sobrecarga de Bind() así:

<%# Bind("ExpectedAwardDate", "{0:M/d/yyyy}") %> 

Lo mismo para su Eval también:

<asp:Label ID="ExpectedAwardDateLabel" runat="server" 
      Text='<%# Eval("ExpectedAwardDate","{0:M/d/yyyy}") %>' /> 
+0

¡Perfecto! ¡Gracias! –

+0

@Abe - Bienvenido :) –

1

Si lo que necesita hacer el formato más intrincado a continuación, cambiar la visualización de una fecha, también puede usar OnItemDataBound

protected void ContactsListView_ItemDataBound(object sender, ListViewItemEventArgs e) 
{ 
    if (e.Item.ItemType == ListViewItemType.DataItem) 
    { 
     // Display the e-mail address in italics. 
     Label EmailAddressLabel = (Label)e.Item.FindControl("EmailAddressLabel"); 
     EmailAddressLabel.Font.Italic = true; 
    } 
} 
Cuestiones relacionadas