ComponentArt:ComboBox 绑定值的方法

样式:

 

comboBox的js取值:

一)componentArt控件在js取值都不需要document.getElementById(),直接用的id

例如<componentArt:combox id="cb_comboBox" runat="server"/>

1.if(cb_comboBox .getSelectedItem() ==null||cb_comboBox .SelectedIndex == 0)
            {
                alert("请选择分公司名称!")
                   cb_comboBox .focus();
                    return false;
            }

 

2.cb_comboBox.get_text().Trim()

二)设置值:cb_comboBox.set_text(carNumber);

三)启用:cb_comboBox.enable();

四)禁用: cb_comboBox.disable();

 

一般的绑定:类型dropdownlist,只是显示

 

 

两级联动:

 

 

绑定枚举:

 

年龄的绑定:

 

 

comboBox与textbox的联动

 

 

comboBox绑定树:

 

comboBox绑定固定内容的树

 

comboBox绑定不固定的树

 

树的事件绑定动态的dataList

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="Serv_FittingsSetAddInsert.aspx.cs"
    Inherits="YC.SH.WEB.Service.Serv_FittingsSetAddInsert" %>

<%@ Register Assembly="ComponentArt.Web.UI" Namespace="ComponentArt.Web.UI" TagPrefix="ComponentArt" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <meta http-equiv="Pragma" content="no-cache" />
    <meta http-equiv="Cache-Control" content="no-cache" />
    <meta http-equiv="Expires" content="0" />
    <title>清点配件添加</title>
    <link href="../App_Themes/DefaultThemes/main.css" rel="stylesheet" type="text/css" />
    <link href="../App_Themes/DefaultThemes/dialog.css" rel="stylesheet" type="text/css" />
    <link href="../App_Themes/DefaultThemes/submit.css" rel="stylesheet" type="text/css" />
    <link href="../App_Themes/DefaultThemes/treeStyle.css" rel="stylesheet" type="text/css" />
    <link href="../App_Themes/DefaultThemes/combobox.css" rel="stylesheet" type="text/css" />

    <script src="../js/calendars.js" type="text/javascript"></script>

    <script type="text/javascript" src="../js/validate.js"></script>

    <style type="text/css">
        li, ul, dt, form, ol, FIELDSET, p, h1, h2, h3, h4, h5, TABLE, IMG, dl, dt, dd
        {
            margin: 0px;
            padding: 0px;
            border: 0px;
            list-style: none;
        }
        body
        {
            margin: 0;
            padding: 0;
            text-align: center;
            font-size: 12px;
        }
        A:link, A:visited
        {
            font: "宋体";
            color: #1c1c1c;
            text-decoration: none;
        }
        A:hover, A:active
        {
            text-decoration: underline;
            color: #000000;
        }
        .list_kt
        {
            height: 30px;
            width: 500px;
            background: #BFEFFF;
            border: #B0E2FF solid 1px;
            margin: 3px auto;
            font-weight: bold;
        }
        .list_kt .lkttbt
        {
            float: left;
            width: 200px;
            line-height: 30px;
            text-align: left;
            margin-left: 10px;
        }
        .list_kt .lktxbt
        {
            line-height: 30px;
            font-size: 12px;
            width: 100px;
            float: left;
        }
        .list_kt .lktxrt
        {
            line-height: 30px;
            font-size: 12px;
            width: 65px;
            float: right;
            margin-right: 10px;
            text-align: center;
        }
        .list_kb
        {
            height: 30px;
            width: 500px;
            background: #FDF9D6;
            border: #FECC46 solid 1px;
            margin: 3px auto;
        }
        .list_kb .lkttb
        {
            float: left;
            width: 200px;
            line-height: 30px;
            text-align: left;
            margin-left: 10px;
        }
        .list_kb .lktxb
        {
            line-height: 30px;
            font-size: 12px;
            width: 100px;
            float: left;
        }
        .list_kb .lktxr
        {
            line-height: 30px;
            font-size: 12px;
            width: 65px;
            float: right;
            margin-right: 10px;
            text-align: center;
        }
        .list_kb .lktxr input
        {
            height: 21px;
            width: 46px;
            line-height: 20px;
            border: #87A3C1 solid 1px;
            margin-top: 2px;
            color: #333;
        }
        .list_kb .txtext
        {
            float: left;
            margin-right: 3px;
            width: 150px;
            text-align: right;
            vertical-align: middle;
        }
        .list_kb .intext
        {
            padding-top: 3px;
        }
    </style>

    <script type="text/javascript" language="javascript">
        function tv_carNumber_OnNodeSelect(sender, eventArgs) {
            cb_carNumber.set_text(eventArgs.get_node().get_text()); //设置comboxtext
            cb_carNumber.collapse();
            Callback_Edit.callback("carNumber", eventArgs.get_node().get_text());
        }
        //保存dialog的数据
        function save() {
            if (saveValidate()) {
                var obj = document.getElementById("<%=DataList1.ClientID%>");
                var objstr = "";
                if (obj != null) {
                    var objItemList = obj.getElementsByTagName("input");
                    for (var i = 0; i < objItemList.length; i++) {
                        if (objItemList[i] != null && objItemList[i].type == "hidden") {
                            objstr += objItemList[i].value + "|";
                        } else {
                            objstr += objItemList[i].value + "*";
                        }
                    }
                }
                if (objstr != "" && objstr.length > 0) {
                    objstr = objstr.substring(0, objstr.length - 1);
                }
                //                alert(objstr);

                callBack_save.callback("save", objstr);
            }
        }

        //保存的前台验证
        function saveValidate() {
            var carNumber = cb_carNumber.get_text();
            var tb_checkTime = document.getElementById("tb_checkTime");
            if (carNumber == null || carNumber == "--请选择车牌号码--") {
                alert("请选择车牌号码!");
                cb_carNumber.focus();
                return false;
            }
            if (!checkInputValueIsEmpty(tb_checkTime)) {
                alert("请选入清点时间!");
                tb_checkTime.focus();
                return false;
            }
            var obj = document.getElementById("<%=DataList1.ClientID%>");
            var objItemList = obj.getElementsByTagName("input");
            if (obj != null) {
                for (var t = 0; t < objItemList.length; t++) {
                    if (objItemList[t].type == "text") {
                        if (objItemList[t].value == "") {
                            objItemList[t].focus();
                            return false;
                        }
                    }
                }
            }

            return true;
        }

        //刷新窗口
        function refreshPage() {
            window.returnValue = true;
            window.close();
        }
    </script>

</head>
<body>
    <form id="form1" runat="server">
    <div>
        <asp:HiddenField ID="hf_command" runat="server" />
        <ComponentArt:CallBack ID="callBack_save" runat="server" PostState="true" OnCallback="callBack_save_Callback" />
        <table cellpadding="0" cellspacing="0">
            <tr>
                <td>
                    <table cellpadding="0" cellspacing="0" width="500px">
                        <tr>
                            <td style="width: 65px" align="right" nowrap>
                                车牌号码:
                            </td>
                            <td style="width: 150px" οnpaste="return false;" οnkeydοwn="return false;">
                                <ComponentArt:ComboBox ID="cb_carNumber" runat="server" AutoFilter="false" AutoHighlight="false"
                                    AutoComplete="false" CssClass="comboBox" HoverCssClass="comboBoxHover" FocusedCssClass="comboBoxHover"
                                    TextBoxCssClass="comboTextBox" DropDownCssClass="comboDropDown" ItemCssClass="comboItem"
                                    ItemHoverCssClass="comboItemHover" SelectedItemCssClass="comboItemSelect" DropHoverImageUrl="../App_Themes/images/combox/drop_hover.gif"
                                    DropImageUrl="../App_Themes/images/combox/drop.gif" Width="153" DropDownHeight="297"
                                    DropDownWidth="216">
                                    <DropDownContent>
                                        <ComponentArt:TreeView ID="tv_carNumber" DragAndDropEnabled="false" NodeEditingEnabled="false"
                                            NodeCssClass="TreeNode" SelectedNodeCssClass="SelectedTreeNode" HoverNodeCssClass="HoverTreeNode"
                                            NodeEditCssClass="NodeEdit" LineImageWidth="19" LineImageHeight="20" DefaultImageWidth="16"
                                            DefaultImageHeight="14" ItemSpacing="0" NodeLabelPadding="3" ImagesBaseUrl="../App_Themes/images/Main/"
                                            LineImagesFolderUrl="../App_Themes/images/Treeview/" ShowLines="true" EnableViewState="true"
                                            runat="server">
                                            <ClientEvents>
                                                <NodeSelect EventHandler="tv_carNumber_OnNodeSelect" />
                                            </ClientEvents>
                                        </ComponentArt:TreeView>
                                    </DropDownContent>
                                </ComponentArt:ComboBox>
                            </td>
                            <td style="width: 3px" align="left">
                                <span style="color: Red">*</span>
                            </td>
                            <td align="right" style="width: 80px" nowrap>
                                清点时间:
                            </td>
                            <td style="width: 150px">
                                <asp:TextBox ID="tb_checkTime" runat="server" CssClass="input05" Width="150px" οnfοcus="this.className='input02';this.select();setday(this);"
                                    οnblur="this.className='input01';DBC2SBC(this);" />
                            </td>
                            <td align="left">
                                <span style="color: Red">*</span>
                            </td>
                        </tr>
                        <tr>
                            <td colspan="6">
                                <ComponentArt:CallBack ID="Callback_Edit" runat="server" PostState="true" OnCallback="CallBack_Edit_Callback">
                                    <Content>
                                        <asp:PlaceHolder ID="pl_checkData" runat="server">
                                            <asp:DataList ID="DataList1" runat="server" BorderWidth="0" CellPadding="0" CellSpacing="1">
                                                <HeaderTemplate>
                                                    <div class="list_kt">
                                                        <div class="lkttbt">
                                                            配件名称
                                                        </div>
                                                        <div class="lktxbt">
                                                            上次清点数
                                                        </div>
                                                        <div class="lktxrt">
                                                            本次清点数
                                                        </div>
                                                    </div>
                                                </HeaderTemplate>
                                                <ItemTemplate>
                                                    <div class="list_kb">
                                                        <div class="lkttb">
                                                            <asp:HiddenField ID="hid_id" runat="server" Value='<%# DataBinder.Eval(Container.DataItem, "配件ID")%>' />
                                                            <%# DataBinder.Eval(Container.DataItem, "配件名称")%>
                                                        </div>
                                                        <div class="lktxb">
                                                            <%# DataBinder.Eval(Container.DataItem, "配件数量")%>
                                                        </div>
                                                        <div class="lktxr">
                                                            <asp:TextBox ID="tb_thisCount" runat="server" MaxLength="30" CssClass="input05" οnfοcus="this.className='input02';this.select();"
                                                                οnblur="this.className='input01';DBC2SBC(this);" Width="60px" Style="ime-mode: disabled"
                                                                οnkeypress="KeyPressNum(this);" />
                                                        </div>
                                                    </div>
                                                </ItemTemplate>
                                                <FooterTemplate>
                                                    </table>
                                                </FooterTemplate>
                                            </asp:DataList>
                                        </asp:PlaceHolder>
                                    </Content>
                                </ComponentArt:CallBack>
                            </td>
                        </tr>
                    </table>
                </td>
            </tr>
            <tr>
                <td align="center">
                    <input type="button" id="DialogButton" οnclick='save();' value=" 确定 " class="btn02"
                        οnmοuseοver="this.className='btn04'" οnmοuseοut="this.className='btn02'" />
                    <input type='button' οnclick='window.close();' value='取消' class="btn02" οnmοuseοver="this.className='btn04'"
                        οnmοuseοut="this.className='btn02'" />
                </td>
            </tr>
        </table>
    </div>
    </form>
</body>
</html>

--后台--
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using YC.SH.Service;
using YC.DB.DataSource;
using SHIB3.DataAccess.T;
using System.Data;
using ComponentArt.Web.UI;
using YC.SH.Sevice;

namespace YC.SH.WEB.Service
{
    public partial class Serv_FittingsSetAddInsert : PageBase
    {
        protected void Page_Load(object sender, EventArgs e)
        {
            if (!IsPostBack)
            {
                BindTreeView();
                tb_checkTime.Attributes.Add("readOnly","readOnly");
                hf_command.Value = "insert";
            }
        }


        /// <summary>
        /// 绑定数据源
        /// </summary>
        private void bingSource(string filter)
        {
            ObjModelDataSource<VIEW_随车配件设置> obj = new ObjModelDataSource<VIEW_随车配件设置>(filter);
            DataList1.DataSource = obj;
            DataList1.DataBind();

        }


        /// <summary>
        /// 绑定树
        /// </summary>
        private void BindTreeView()
        {
            //清除树节点
            tv_carNumber.Nodes.Clear();
            TreeViewNode parentsNode = new TreeViewNode();
            parentsNode.ImageUrl = "folder.gif";
            parentsNode.ExpandedImageUrl = "folder_open.gif";
            cb_carNumber.Text = parentsNode.Text = "--请选择车牌号码--";
            parentsNode.Value = "-1,-1";
            parentsNode.Expanded = true;
            tv_carNumber.Nodes.Add(parentsNode);

            string filter = string.Empty;
            ObjModelDataSource<分公司信息> source = new ObjModelDataSource<分公司信息>(DataSourceType.全部读取, filter);
            source.AddCandidate(分公司信息.Col_ID, 分公司信息.Col_公司名称);
            source.OrderStr = string.Format("{0} asc", 分公司信息.Col_排序);
            foreach (DataRow dept in source.DataObjectSource.Tables[0].Rows)
            {
                TreeViewNode node = new TreeViewNode();
                node.Text = dept[分公司信息.Col_公司名称].ToString();

                if (dept[分公司信息.Col_ID].ToString() == "0")
                {
                    node.ImageUrl = "mastcompany1.png";
                    node.ToolTip = "总公司";
                    node.ExpandedImageUrl = "mastcompany2.png";
                }
                else
                {
                    node.ImageUrl = "company1.png";
                    node.ToolTip = "分公司";
                    node.ExpandedImageUrl = "company2.png";
                }
                node.Expanded = false;
                node.Selectable = false;//不能被选择
                node.Value = string.Format("{0},{1}", dept[分公司信息.Col_ID], "0");
                string url = string.Format("../TreeViewUrl.aspx?parentID={0}&chlidType=3", Server.UrlEncode(dept[分公司信息.Col_ID].ToString()));
                node.ContentCallbackUrl = url;
                parentsNode.Nodes.Add(node);
            }
        }


        //添加
        protected void callBack_save_Callback(object sender, ComponentArt.Web.UI.CallBackEventArgs e)
        {
            string js = string.Empty;
            string[] pars = e.Parameters;
            switch (pars[0])
            {
                case "save":
                    string comm = hf_command.Value;
                    switch (comm)
                    {
                        case "insert":
                            int insertResult = Insert(pars[1]);

                            switch (insertResult)
                            {
                                case 0:
                                    js = "<script>alert('添加成功!');refreshPage();</script>";
                                    break;
                                case 2:
                                    js = "<script>alert('数据库操作失败!')</script>";
                                    break;
                            }
                            break;
                    }
                    break;

                default:
                    break;
            }
            if (!string.IsNullOrEmpty(js))
            {
                e.Output.Write(js);
            }
        }


        //操作
        protected void CallBack_Edit_Callback(object sender, ComponentArt.Web.UI.CallBackEventArgs e)
        {
            string js = string.Empty;
            string[] pars = e.Parameters;
            switch (pars[0])
            {
                case "carNumber":
                    string filter = string.Format("{0}='{1}'", VIEW_随车配件设置.Col_车牌号码, pars[1]);
                    bingSource(filter);
                    break;
                default:
                    break;
            }
            pl_checkData.RenderControl(e.Output);
        }


        /// <summary>
        /// 添加
        /// </summary>
        /// <returns></returns>
        private int Insert(string strValue)
        {
            int result = 0;
            FittingsCheckRecord fittingCheckRecord = new FittingsCheckRecord();
            List<配件清点记录> list = new List<配件清点记录>();

            string[] strList = strValue.Split('*');

            for (int i = 0; i < strList.Length; i++)
            {

                string[] objvalue = strList[i].Split('|');


                //foreach (DataListItem item in DataList1.Items)
                //{
                //  Label lb_配件ID = item.FindControl("Label1") as Label;

                配件清点记录 obj = new 配件清点记录();
                obj.配件ID = objvalue[0];
                obj.清点人 = LoginUser.LoginName;
                obj.车牌号码 = cb_carNumber.Text;
                obj.配件数量 = Convert.ToDecimal(objvalue[1]);
                obj.清点时间 = Convert.ToDateTime(tb_checkTime.Text);
                list.Add(obj);
                //}
            }
            bool resultResult = false;
            if (list != null && list.Count > 0)
            {
                resultResult = fittingCheckRecord.FittingsCheckRecordListInsert(list, LoginUser);
            }
            if (resultResult)
            {
                result = 0;
            }
            else
            {
                result = 2;
            }
            return result;
        }


    }
}

---添加方法--

        /// <summary>
        /// 添加配件清点记录
        /// </summary>
        /// <param name="obj"></param>
        /// <param name="user"></param>
        /// <returns>true 成功,false 失败</returns>
        public bool FittingsCheckRecordListInsert(List<配件清点记录> List, SysUser user)
        {
            bool result = false;
            using (DatabaseCommand db = DBFactory.CreateDB(配件清点记录.DBNAME))
            {
                if (List != null)
                {
                    db.BeginTransaction();
                    foreach (配件清点记录 obj in List)
                    {
                        result = db.InsertObj(obj);
                        if (result)
                        {
                            if (user != null)
                            {
                                string context = string.Format("添加ID为{0}的配件清点记录", obj.ID);
                                操作日志 log = LogCommand.getLog(user.UserName, user.UserID, "添加配件清点记录", 页面, context);
                                db.InsertObj(log);
                            }
                        }
                        else
                        {
                            break;
                        }
                    }
                    if (result)
                    {
                        db.Commit();
                    }
                    else
                    {
                        db.Rollback();
                    }
                }
            }
            return result;
        }


 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
漂亮的ComponentArtWebUI及Demo源码 产品特征: 先进的用户界面控件套装:为高级Web应用程序开发提供了16个优质的用户界面控件。 专为ASP.NET而设计:为三个先进且更强大的框架而设计:ASP.NET 1.0, ASP.NET 2.0和ASP.NET AJAX。 强大的客户端呈现技术:行业最先进的Web用户界面技术。 深入整合ASP.NET AJAX:最理想的完全应用AJAX框架的控件。 全面的帮助文档和技术支持:提供了完善的产品在线帮助文档和全面的技术支持资源。 企业级服务和培训:为企业级项目开发定制专门的产品咨询和培训服务。 灵活的产品授权:针对开发者,服务和企业级应用提供不同的授权方式。 ComponentArt Web.UI 2007.1 更新信息 ComponentArt Web.UI 2007.1 版本发布了三个最新的控件: ToolBar for ASP.NET ComboBox for ASP.NET Dialog for ASP.NET 以下为Web.UI组件2007.1版本新增的功能特征: ComponentArt Grid 可以在Callback模式缓存页面 (CallbackCachingEnabled和CallbackCacheSize属性)。 可在Callback模式预加载页面到缓存 (CallbackCacheLookAhead属性)。 页面在滑动条经过时可提取页面 (SliderFetchDelay属性)。 客户端滚动事件。 客户端beforeCallback事件。 ColumnResizeRedistributeWidth属性用于控制缩放状态。 ComponentArt Menu 引入(已选)checking和(未选)unchecking项的概念。允许菜单项成为复选框或者单元按钮。 引入(图标透明度)IconVisibility的概念。可使图标只在该项被选或该项根目录时显示。 添加更多对上下文菜单扩展的控制:(TopGroupExpandDirection, TopGroupExpandOffsetX, TopGroupExpandOffsetY)。 增加了ExpandDisabledItems的布尔属性。 改进了IE7的元素覆盖运算法则,优化其执行性能。 ComponentArt MultiPage 增加了IE转换效果 (Transition, TransitionDuration属性)。 Web.UI 2007.1 版本没有进行整体框架的改变,只是在Web.UI 2006.2的基础上进行了改进,所以通过最新的ComponentArt.Web.UI.dll可以很方便的对之前的应用程序进行编译。 ComponentArt Web.UI是全球知名的ASP.NET用户界面控件包,它提供了ComponentArt独特的界面呈现技术,支持强大的AJAX技术,可以为您提供最先进的ASP.NET Web用户界面。ComponentArt Web.UI专为ASP.NET框架设计,它包含16个支持AJAX技术的优质用户界面控件,并可应用在ASP.NET 1.0, ASP.NET 2.0, ASP.NET AJAX框架。 2008年3月27日,专注于ASP.NET Web.UI及Charting控件开发的ComponentArt又发布了Web.UI的最一代版本:2008.1。该版本有四个框架平台:ASP.NET 1.0、ASP.NET 2.0、ASP.NET Ajax,还有当然是最新的.NET框架支持的ASP.NET 3.5了。 2008.1不仅对其代码的运行效率进行了优化,还最增了一个大家期盼已久的成员:Upload。上传空间虽已不是罕见的东东,可是ComponentArt提供的这款不会让你和你的开发团队失望的。 更主要的是ASP.NET 3.5的版本的发布的,同样,特性和功能都具备的同时,也加入了对LINQ的高度支持。这样,ASP.NET 3.5的开发人员也可以享用到这份大餐喽~ Advanced User Interface Control Suite: Includes 19 Premium User Interface controls for development of sophisticated web applications. Built for ASP.NET: Available in four progressively more powerful framework builds: ASP.NET 1.0, ASP.NET 2.0, ASP.NET AJAX and ASP.NET 3.5. Powerful Client-side Rendering Technology: Featuring the most advanced web user interface technology in the industry. Deepest ASP.NET AJAX Integration: The first true controls to fully exploit the most advanced AJAX framework available. Comprehensive Documentation and Support: Featuring complete product documentation online and all-inclusive technical support resources. Enterprise Consulting and Training: Customized consulting and training services are offered to support Enterprise development projects involving larger teams of developers. Flexible Licensing: Available at Developer, Subscription and Enterprise levels. ComponentArt Web.UI 包含以下用户界面控件 Calendar (日历) Grid (表格) Rotator (旋转器) TabStrip (标签) CallBack (回调) Menu (菜单) SiteMap (地图) ToolBar (工具条) ComboBox (组合框) MultiPage (分页) Snap (抓取) TreeView (树形列表) Dialog (对话框) NavBar (导航条) Splitter (框架分离) WebChart Lite (图表) 如果涉及到安装序列号,请填写:3JKX6-YJW6X-GJJDP app_data为应用到的Sql和Access数据库文件 documentation下为官方的相关文档 DllCode下为控件的源码

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

来杯水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值