Изменение значения свойства flex DateField.text для свойства selectedDate на null - PullRequest
1 голос
/ 26 июля 2011

У меня странная проблема.При установке свойства text для Flex DateField свойство selectedDate этого DateField становится равным нулю.

Мне нужно установить свойство text, чтобы я мог использовать определенный формат (DD-MMM-YYYY).

Ответы [ 2 ]

2 голосов
/ 27 июля 2011

Пока я набирал свой вопрос, я провел еще несколько расследований и немного погуглил, и наконец нашел ответ.

http://www.cubicleman.com/2008/02/12/flex-datefield-and-formats/

Я потратил большую частьдень, пытаясь найти решение этой проблемы, и уже немного погуглил, поэтому подумал, что было бы неплохо включить его в stackoverflow, чтобы повысить вероятность того, что кто-то другой найдет решение в будущем.

Ответ, по сути, следующий:

Вам необходимо использовать комбинацию средства форматирования даты и функции метки, чтобы дата отображалась правильно.Затем, чтобы иметь возможность устанавливать дату программно без Flex, «возиться с головой», вам нужно установить нулевую функцию parseFunction на dateField.

Код:

<mx:Script>
  <![CDATA[
      private function doDateLabel(item:Date):String {
         return dateFormatter.format(item);
      }
  ]]>
</mx:Script>
<mx:DateFormatter id="dateFormatter" formatString="DD/MMM/YYYY" />
<mx:DateField id="begin"
              showToday="true"
              labelFunction="doDateLabel"
              parseFunction="null"/>
1 голос
/ 01 марта 2012
InputTxt.selectedDate = DateField.stringToDate(InputTxt.text, "DD/MM/YYYY");

См. AS AS для DateField.stringToDate .

...