This is a migrated thread and some comments may be shown as answers.

TimePicker in GridDatetimeColumn: cannot set properties

2 Answers 130 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Thai Thuong
Top achievements
Rank 1
Thai Thuong asked on 15 Nov 2010, 09:54 AM
Hello!
I am using version 2010.1.519.35, and get a problem, in GridDateTimeColumn, i set PickerType="TimePicker", this aspx code:

<tlk:GridDateTimeColumn PickerType="TimePicker" DataFormatString="{0: HH:mm}" DataField="StartTime" HeaderText="Start time" UniqueName="StartTime">                          
      <HeaderStyle Width="110px" />
      <ItemStyle Wrap="true" />
</tlk:GridDateTimeColumn>

and code behind:

protected void _grid_ItemDataBound(object sender, GridItemEventArgs e)
{
  if (e.Item is GridEditableItem && e.Item.IsInEditMode)
        {
            ((RadTimePicker)item["StartTime"].Controls[0]).TimeView.TimeFormat = "HH:mm";
            ((RadTimePicker)item["StartTime"].Controls[0]).TimeView.Columns = 2;
 
            ((RadTimePicker)item["StartTime"].Controls[0]).DateInput.DateFormat = "HH:mm";
            ((RadTimePicker)item["StartTime"].Controls[0]).DateInput.DisplayDateFormat = "HH:mm";
        }
}

DateInput's properties works fine, but TimeView does not. In time popup, timeformat's still "t", not "HH:mm", and columns number is three (3). Please help me solve this proplem.
(Sorry for my bad english)
Thanks so much!

2 Answers, 1 is accepted

Sort by
0
Accepted
Marin
Telerik team
answered on 17 Nov 2010, 03:32 PM
Hello Thai Thuong,

You can use a TemplateColumn instead and place a TimePicker in the EditItemTemplate. Then you can configure its properties in code-behind in the ItemCreated event. Here is a code sample:
<telerik:GridTemplateColumn HeaderText="Available dates" UniqueName="TemplateColumn">
                    <ItemTemplate>
                        <asp:Label runat="server" ID="date" Text='<%# Eval("OrderDate") %>'>
                        </asp:Label
                    </ItemTemplate>
                    <EditItemTemplate>
                        <telerik:RadTimePicker ID="picker1" runat="server" DbSelectedDate='<%# Bind("OrderDate") %>'>
                        </telerik:RadTimePicker>
                    </EditItemTemplate>
                </telerik:GridTemplateColumn>

and in code-behind:
protected void RadGrid1_ItemCreated(object sender, GridItemEventArgs e)
    {
        if (e.Item is GridEditableItem && e.Item.IsInEditMode)
        {
            GridDataItem item = e.Item as GridDataItem;
            RadTimePicker picker = item["TemplateColumn"].FindControl("picker1") as RadTimePicker;
            picker.TimeView.TimeFormat = "HH:mm";
            picker.TimeView.HeaderText = "New Header";
            picker.TimeView.BackColor = Color.Crimson;
            picker.TimeView.Columns = 2;
        }
    }

Best wishes,
Marin
the Telerik team
Browse the vast support resources we have to jumpstart your development with RadControls for ASP.NET AJAX. See how to integrate our AJAX controls seamlessly in SharePoint 2007/2010 visiting our common SharePoint portal.
0
Thai Thuong
Top achievements
Rank 1
answered on 19 Nov 2010, 02:10 AM
Thanks Marin so much, it works!
Tags
Grid
Asked by
Thai Thuong
Top achievements
Rank 1
Answers by
Marin
Telerik team
Thai Thuong
Top achievements
Rank 1
Share this question
or