Telerik的RadControls控件(三)

Telerik的RadControls控件(三)相信大家学习了RadControl中的RadWindow、RadAjaxManager、RadAjaxLoadingPanel控件后,一定会觉得它是解放.Net技术人员Web开发的技术工具,从而不再为Asp。NET中的局部刷新而绞尽脑汁。  现在我告诉你,前边才仅仅是你发现Web开发更加容易、方便的第一步,通过下来项目中其他常用Rad控件的介绍,你会更加欣喜若狂。好了下来我就介绍另一重量级的控

大家好,又见面了,我是你们的朋友全栈君。

相信大家学习了RadControl中的RadWindow、RadAjaxManager、RadAjaxLoadingPanel控件后,一定会觉得它是解放.Net技术人员Web开发的技术工具,从而不再为Asp。NET中的局部刷新而绞尽脑汁。

  现在我告诉你,前边才仅仅是你发现Web开发更加容易、方便的第一步,通过下来项目中其他常用Rad控件的介绍,你会更加欣喜若狂。好了下来我就介绍另一重量级的控件Telerik.RadCombobox下拉列表控件。

  RadCombobox控件是一个用于在ASP.NET应用程序中的并能创建灵活下拉界面的控件。本产品具有的一系列丰富的特性,例如:异步回叫(asynchronous callbacks),自动补全(Auto-Complete),自动排序,验证,层叠显示,自定义外观等等。

  其优势特征有:

  1、强大的自动补全(Auto-Complete)功能;

  2、按需加载;
  3、支持模板功能;

  4、灵活的绑定机制;

  5、丰富的服务器端及客户端事件;

  6、多组合框关联使用
    您可以在同一页面中设置多个r.a.d.combobox控件实例, 并且非常轻松的通过客户端或者服务器端事件将它们关联起来使用。

  实例分析

  1、运行图

  Telerik的RadControls控件(三)

  2、控件Html代码:

   <telerik:RadComboBox ID=”RadComboRole” runat=”server” HighlightTemplatedItems=”true” AutoPostBack=”true”
                    AllowCustomText=”true” OnClientDropDownClosed=”onDropDownClosing”
                    Width=”96%” onselectedindexchanged=”RadComboRole_SelectedIndexChanged”>
                    <ItemTemplate>
                        <div οnclick=”StopPropagation(event)” class=”combo-item-template”>
                            <asp:CheckBox runat=”server” ID=”chk1″ οnclick=”onCheckBoxClick(this)” />
                            <asp:Label runat=”server” ID=”Label1″ AssociatedControlID=”chk1″>
                                    <%# Eval(“RoleName”) %>
                            </asp:Label>
                        </div>
                    </ItemTemplate>
                </telerik:RadComboBox>

  3、辅助的js脚本:    

<script type=”text/javascript” language=”javascript”>
        var cancelDropDownClosing = false;
        function onDropDownClosing() {

            cancelDropDownClosing = false;
        }

        function StopPropagation(e) {

            e.cancelBubble = true;
            if (e.stopPropagation) {

                e.stopPropagation();
            }
        }
        function onCheckBoxClick(chk) {

            var combo = $find(“<%= RadComboRole.ClientID %>”);
            cancelDropDownClosing = true;
            var text = “”;
            var values = “”;
            var items = combo.get_items();
            for (var i = 0; i < items.get_count(); i++) {

                var item = items.getItem(i);
                var chk1 = $get(combo.get_id() + “_i” + i + “_chk1”);
                if (chk1.checked) {

                    text += item.get_text() + “,”;
                    values += item.get_value() + “,”;
                }
            }
            text = removeLastComma(text);
            values = removeLastComma(values);

            combo.set_text(text);
            combo.set_value(values);
        }
        function removeLastComma(str) {

            return str.replace(/,$/, “”);
        }

4、后台代码:

        private void BindComBoxList()
        {
            List<SysRole> sysRoleList = SysRoleLogic.GetSysRoleList();
            RadComboRole.DataSource = sysRoleList;
            RadComboRole.DataTextField = “RoleName”;
            RadComboRole.DataValueField = “RoleID”;
            RadComboRole.DataBind();
        }

 通过以上四步便设置了以往需要做好多事情才可以做到的效果,另外此控件可以实现树形选择如下图:

          Telerik的RadControls控件(三)

其Html代码如下:

    <telerik:RadComboBox ID=”RadComboBox2″ Width=”240px” Height=”300px” AllowCustomText=”true”
        EmptyMessage=”Showing all cars” OnClientDropDownClosing=”OnClientDropDownClosingHandler”
        runat=”server”>
        <ItemTemplate>
            <div οnclick=”StopPropagation(event)”>
                <telerik:RadTreeView ID=”RadTreeView1″ runat=”server” DataSourceID=”SqlDataSource2″
                    DataTextField=”VehicleName” DataValueField=”VehicleTypeID” DataFieldID=”ID” DataFieldParentID=”VehicleParentID”
                    OnClientNodeClicking=”OnClientNodeClickingHandler”>
                    <DataBindings>
                        <telerik:RadTreeNodeBinding Depth=”0″ Category=”Make” ImageUrlField=”ImagePath” />
                    </DataBindings>
                </telerik:RadTreeView>
            </div>
        </ItemTemplate>
        <Items>
            <telerik:RadComboBoxItem />
        </Items>
    </telerik:RadComboBox>

具体的操作过程就不太多说了请参见http://demos.telerik.com/aspnet-ajax/combobox/examples/functionality/templates/defaultcs.aspx

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/161990.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • ubuntu: 查看cuda版本

    ubuntu: 查看cuda版本nvcc-V

  • 搭建nexus3私库简要步骤

    搭建nexus3私库简要步骤搭建nexus私库简要步骤:安装nexus登录nexus页面端默认地址http://loaclhost:8081登录nexus账号默认admin/admin123maven-central:maven中央库,默认从https://repo1.maven.org/maven2/拉取jarmaven-releases:私库发行版jar,初次安装请将Deploymentpolicy设置为Allowredeploymaven-snapshots:私库快照(调试版本)jarm

  • 苹果SE(fpga cpld)

    ModelsimSE-6410.4破解安装过程百度云链接:https://pan.baidu.com/s/1ONbjNLajFKzHDJ9bs4gz6Q密码:by0p压缩包解压密码:Lily_9 ①执行软件的正常安装程序.exe,点点我同意神马的….(需要重启一次)②在软件安装目录中找到mgls64.dll文件,右键文件属性取消只读属性。mgls64.dll文件的默认路径…

  • mysql全文索引详解_MySql全文索引详解

    mysql全文索引详解_MySql全文索引详解##MySql全文索引详解InnoDB引擎对FULLTEXT索引的支持是MySQL5.6新引入的特性,之前只有MyISAM引擎支持FULLTEXT索引。所谓全文索引,是一种通过建立倒排索引,快速匹配文档的方式。对于FULLTEXT索引的内容可以使用MATCH(column)…AGAINST(val)语法进行查询。###MySQL支持三种模式的全文检索模式:自然语言模式(INNATURALLAN…

  • snmp trap报文格式_linux接收snmptrap

    snmp trap报文格式_linux接收snmptrap转载地址:https://blog.csdn.net/eric_sunah/article/details/19557683SNMP的报文格式SNMP代理和管理站通过SNMP协议中的标准消息进行通信,每个消息都是一个单独的数据报。SNMP使用UDP(用户数据报协议)作为第四层协议(传输协议),进行无连接操作。SNMP消息报文包含两个部分:SNMP报头和协议数据单元PDU。在实际网络传输环境下,S…

  • Linux: sctp 实例

    Linux: sctp 实例https://www.opensourceforu.com/2011/12/socket-api-part-5-sctp/需要安装lksctp-tools-develyuminstalllksctp-tools-devel编译需要-lsctpgccserver.c-lsctp-oserverClient,调用connet函数时,会触发SCTP-INIT消息,消息里的IPaddress列表是根据当前机器所配置的所有IP地址来填充,如何配置这个地址列表呢?:__sctp_con

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号