【问题标题】:How can I control the default date for date columns in the UltraWebGrid control?如何控制 UltraWebGrid 控件中日期列的默认日期?
【发布时间】:2012-01-21 12:00:58
【问题描述】:

我正在使用 Infragistics UltraWebGrid 控件并具有以下布局:

<igtbl:UltraWebGrid ID="uwgPrescribedTrainingPlan" runat="server" Browser="Auto">
   <Bands>
      <igtbl:UltraGridBand DataKeyField="TRAININGPLANID">
         <Columns>
            ...
            <igtbl:UltraGridColumn HeaderText="Training Start Date" Key="STARTDATE" BaseColumnName="STARTDATE"
               DataType="System.DateTime" Format="MM-dd-yy" EditorControlID="wdcDateChooser" />
            <igtbl:UltraGridColumn HeaderText="Training End Date" Key="ENDDATE" BaseColumnName="ENDDATE"
               DataType="System.DateTime" Format="MM-dd-yy" EditorControlID="wdcDateChooser" />
            ...
         </Columns>
      </igtbl:UltraGridBand>
   </Bands>
</igtbl:UltraWebGrid>

两个重要的列是STARTDATEENDDATE。两者都允许用户使用日历控件编辑单元格。

现在,如果您更改 ENDDATE 单元格的值,选择器将默认为当前日期。我想要的是默认为STARTDATE 列的值(如果有的话)。

我查看了文档并没有找到太多内容,而且客户端脚本 API 似乎完全没有文档记录。有谁知道这是否可行?

更新

我可以将处理程序附加到wdcDateChooserAfterDropDown 事件,但是在该处理程序中,我看不到任何方法可以获取我在网格中单击的行。

【问题讨论】:

    标签: asp.net infragistics ultrawebgrid


    【解决方案1】:

    我相信我有一个解决方案。我已将以下 Javascript 附加到 WebDateChooser 控件的 AfterDropDown 事件,如下所示:

    &lt;ClientSideEvents AfterDropDown="InitEndDateDefault"&gt;&lt;/ClientSideEvents&gt;

    Javascript函数如下:

    function InitEndDateDefault(oDateChooser, dropDownPanel, oEvent)
    {
       var cell = oDateChooser.webGrid.grid.getActiveCell();
    
       if (cell.Column.Key == "ENDDATE" && !oDateChooser.getValue())
       {
          var startDate = cell.getPrevCell().getValue();
          oDateChooser.Calendar.setSelectedDate(startDate);
       }
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-08-12
      • 1970-01-01
      • 2020-01-23
      • 1970-01-01
      • 1970-01-01
      • 2021-03-09
      • 2013-11-25
      • 2021-03-14
      相关资源
      最近更新 更多