JS 网格控件小组件

上次修改时间: 2010年4月30日

适用范围: SharePoint Foundation 2010

JS 网格控件包含小组件的组件库。这些小组件提供日期选取器或超链接选取器等功能。

JS 网格控件小组件

  • 日期选取器

  • 超链接选取器

实现小组件

向网格中添加日期选取器小组件

  1. 使传入列的属性类型与传出网格字段相匹配。将 PropertyTypeID 属性设置为"JSDateTime"后,会将日期选取器添加到网格中。

    else if (dc.DataType == typeof(DateTime))
        {
            gf.PropertyTypeId = "JSDateTime";
            gf.Localizer = (ValueLocalizer)delegate(DataRow row, object toConvert)
            {
                return toConvert == null ? "" : toConvert.ToString();
            };
            gf.EditMode = EditMode.ReadWrite;
            gf.SerializeDataValue = true;
            gf.SerializeLocalizedValue = true;
        }
    
    ElseIf dc.DataType Is GetType(DateTime) Then
        gf.PropertyTypeId = "JSDateTime"
        gf.Localizer = CType(Function(row As DataRow, toConvert As Object) As String
        Return If(toConvert Is Nothing, Nothing, toConvert.ToString) 
        End Function, ValueLocalizer)
        gf.EditMode = EditMode.ReadWrite
        gf.SerializeDataValue = True
        gf.SerializeLocalizedValue = True
    

    请注意,在此示例中,EditMode 设置为 ReadWrite,SerializeDataValue 和 SerializeLocalizedValue 设置为 true。

  2. 添加一个类型为 DateTime 的日期列。

    data.Columns.Add(new DataColumn("Start Date", typeof(DateTime)));
    
    data.Columns.Add(New DataColumn("Start Date", GetType(Datetime)))
    
  3. 为该日期列定义数据。此示例为"开始日期"列创建随机日期。

    dr["Start Date"] = DateTime.Now.AddSeconds(rand.Next(60 * 60 * 24 * 20));
    
    dr("Start Date") = DateTime.Now.AddSeconds(rand.Next(60 * 60 * 24 * 20))
    

    单击某日期单元格以选中它。该单元格周围会出现轮廓,并且旁边会出现一个小图标。如果该单元格可编辑,并且您单击了该单元格本身,则可直接对日期进行编辑。如果您单击该单元格旁边的符号,则会显示日期选取器。

向网格中添加超链接选取器

  1. 使传入列的属性类型与传出网格字段相匹配。将 PropertyTypeID 属性设置为"超链接"后,会将超链接选取器添加到网格中。

    else if (dc.DataType == typeof(Hyperlink))
        {
            gf.PropertyTypeId = "Hyperlink";
            gf.Localizer = (ValueLocalizer)delegate(DataRow row, object toConvert)
            {
                return toConvert == null ? "" : toConvert.ToString();
            };
            gf.SerializeLocalizedValue = false;
            gf.SerializeDataValue = true;
        }
    
    ElseIf dc.DataType Is GetType(Hyperlink) Then
        gf.PropertyTypeId = "Hyperlink"
        gf.Localizer = CType(Function(row As DataRow, toConvert As Object) As String
        Return If(toConvert Is Nothing, Nothing, toConvert.ToString) 
        End Function, ValueLocalizer)
        gf.SerializeLocalizedValue = False
        gf.SerializeDataValue = True
    
  2. 将超链接列添加到网格中。

    data.Columns.Add(new DataColumn("Hyperlink", typeof(Hyperlink)));
    
    data.Columns.Add(New DataColumn("Hyperlink", GetType(Hyperlink)))
    
  3. 为超链接列定义数据。此示例将显示文本设置为"Contoso",将 URL 设置为 https://www.contoso.com。

    dr["Hyperlink"] = new Hyperlink() { Display = "Contoso", Address = "https://www.contoso.com" };
    
    dr("Hyperlink") = New Hyperlink() With {.Display = "Contoso", .Address = "https://www.contoso.com"}
    

单击某超链接单元格以选中它。该单元格周围会出现轮廓,并且旁边会出现一个小图标。如果单击该单元格本身,则会在另一个浏览器窗口中打开该链接。如果单击该单元格左边的符号,则会打开一个对话框,可在其中修改显示名称和 URL。

请参阅

引用

Microsoft.SharePoint.JSGrid