2015-07-01 4 views
1

У меня есть проблема, которую я не могу понять. Я пытался найти решение, но оно не работает на моей странице ... Я пытаюсь установить текстовое свойство текстового поля и заполнить его фактической датой и временем.Установить текст в TextBox с встроенным кодом

Я попытался это:

<asp:TextBox ID="TextBoxDateTime" runat="server" Text='<%= DateTime.Now.ToString() %>'> 
</asp:TextBox> 

И предположим, что работает (я следовал этому question), но это только заполнить текстовое поле с

DateTime.Now.ToString()

Что не так? Thanks

Редактировать: КПП. Я не хочу устанавливать его в код позади ...

+2

Вы можете попробовать 'Text = '<% # DateTime.Now.ToString()%>'', но тогда вам нужно вызвать 'this.DataBind()' в page_load. Я бы предпочел, чтобы подход Jamel присваивал значение в 'Page_Load'. –

+0

Я убежден, что должен быть более простой способ ... –

+0

Вы хотя бы пробовали, если он работает? –

ответ

1

Если вы хотите установить текст в текущее время и дату без использования DataBind(), вы можете сделать это с некоторой подготовительной работой.

В коде позади вас может сделать метод следующим образом:

protected void SetTextToCurrentDate(object sender, EventArgs e) 
{ 
    TextBox myText = sender as TextBox; 
    myText.Text = System.DateTime.Now.ToString(); 
} 

После того, как это сделано, вы можете просто добавить OnLoad событие управления.

<asp:TextBox ID="TextBoxDateTime" runat="server" OnLoad="SetTextToCurrentDate"></asp:TextBox> 

При этом вы не должны найти TextBox в коде позади.

0

Попробуйте написать TextBoxDateTime.Text=DateTime.Now.ToString() на странице загрузки события в формате .cs.

+0

Спасибо, но я не хочу делать это в коде. Это довольно сложная структура, чтобы найти это текстовое поле ... –

-1

Используйте двойные кавычки при установке на стороне сервера значение,

<asp:TextBox ID="TextBoxDateTime" runat="server" Text="<%= DateTime.Now.ToString() %>"> 
</asp:TextBox> 
0

На вашем ViewLoad или PageLoad установить, что вы включили в текст в текущем осины: текстовое поле.

Textbox.Text = DateTime.Now.ToString(); 

Надеюсь, это поможет!

+0

Спасибо, но я не хочу делать это в коде. Это довольно сложная структура, чтобы найти это текстовое поле ... –

+0

@JendaMatejicek Если вы не хотите этого в коде позади, укажите это в своем вопросе. –

Смежные вопросы