繁体   English   中英

如何将服务器控件添加到Kentico unigrid?

[英]How to add server controls into Kentico unigrid?

我在Kentico 8文档中到处查找,但找不到有关UniGrid中添加服务器或html控件的任何信息。

我需要在UniGrid列之一中添加一个简单的复选框或一个下拉列表,但是我找不到任何方法可以做到这一点! 我发现的唯一东西是GridOptions.ShowSelection ,它是选择我不需要的每一行的常规选择。

任何帮助将不胜感激。

您可以在Unigrid代码中跳入事件OnExternalDataBound,例如参见https://devnet.kentico.com/articles/advanced-unigrid-example

在此处创建动态新Web部件或用户控件。

例如:

在您的XML中,您有此列

<column source="##ALL##" externalsourcename="yourcolumn" caption="" wrap="false" />

然后在UniGrid的代码背后

protected object UniGrid_OnExternalDataBound(object sender, string sourceName, object parameter)
{
    ContextResolver resolver = CMSContext.CurrentResolver.CreateContextChild();
    DataRowView drv;

    switch (sourceName.ToLower())
    {
        case "yourcolumn":
            drv = (DataRowView)parameter;
            CheckBox chk = new CheckBox();
            chk.ID = "chkDoc";
            chk.CssClass = "normalcheckbox";
            chk.InputAttributes.Add("Value", ValidationHelper.GetString(drv["NodeGUID"], string.Empty));
            return chk;
    } 
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM