Динамически устанавливать mintime и maxtime поля времени в ext.net
Я работаю с EXT.NET 1.2 Я хочу установить minTime и maxTime из codebehind(из cs Page).
Я написал следующий код, но не работал этот код.. это их ошибка или есть какой-либо другой метод (через Javascript)??
Код
tmFrom.Increment = 30;
string strmin = obj.startTime.ToShortTimeString();
DateTime dtmin = DateTime.ParseExact(strmin, "H:mm tt", CultureInfo.InvariantCulture);
string strmax = obj.endTime.ToShortTimeString();
DateTime dtmax = DateTime.ParseExact(strmax, "H:mm tt", CultureInfo.InvariantCulture);
tmFrom.Format = "H:mm";
tmFrom.MinTime = dtmin.TimeOfDay;
tmFrom.MaxTime = dtmax.TimeOfDay;
Я устанавливаю minTime и maxTime из значения базы данных.
1 ответ
Решение
Судя по вашему примеру кода, obj.startTime
а также obj.endTime
оба уже объекты DateTime. Вам не нужно преобразовывать в строки, а затем обратно в объекты DateTime.
Следующий пример демонстрирует полный сценарий.
пример
<%@ Page Language="C#" %>
<%@ Register Assembly="Ext.Net" Namespace="Ext.Net" TagPrefix="ext" %>
<script runat="server">
protected void Page_Load(object sender, EventArgs e)
{
var startTime = DateTime.Now.AddMinutes(-215);
var endTime = DateTime.Now.AddMinutes(215);
var time = this.TimeField1;
time.Increment = 30;
time.Format = "H:mm";
time.MinTime = startTime.TimeOfDay;
time.MaxTime = endTime.TimeOfDay;
}
</script>
<!DOCTYPE html>
<html>
<head runat="server">
<title>Ext.NET Examples</title>
</head>
<body>
<ext:ResourceManager runat="server" />
<ext:TimeField ID="TimeField1" runat="server" FieldLabel="Time" />
</body>
</html>
Надеюсь это поможет