找回密码
 立即注册

QQ登录

只需一步,快速开始

lhx74cn

初级会员

26

主题

71

帖子

349

积分

初级会员

积分
349

微信认证勋章

lhx74cn
初级会员   /  发表于:2021-4-21 21:54  /   查看:2048  /  回复:4
老师您好!
            我用如下代码将C1combo控件绑定到C1flexgrid某列后,表格中其它列也会出现C1combo控件控件(见附图)
            表头我是用代码加载的
            C1.Win.C1FlexGrid.CellRange rng = new C1.Win.C1FlexGrid.CellRange();
            c1FlexGrid3.Styles.Normal.WordWrap = true;
            c1FlexGrid3.Rows.Count = 2;
            c1FlexGrid3.Rows.Fixed = 2;  //标题行数
            c1FlexGrid3.AllowMerging = C1.Win.C1FlexGrid.AllowMergingEnum.FixedOnly;//合并启动
            //列
            c1FlexGrid3.Cols[0].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 0, 1, 0);  //合并区域
            rng.Data = "序";
            c1FlexGrid3.Cols[0].Name = "fEntryID";
            //列
            c1FlexGrid3.Cols[1].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 1, 1, 1);  //合并区域
            rng.Data = "材料代码";
            c1FlexGrid3.Cols[1].Name = "fNumber";
            //列
            c1FlexGrid3.Cols[2].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 2, 1, 2);  //合并区域
            rng.Data = "材料名称";
            c1FlexGrid3.Cols[2].Name = "fName";
            //列
            c1FlexGrid3.Cols[3].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 3, 1, 3);  //合并区域
            rng.Data = "批号";
            c1FlexGrid3.Cols[3].Name = "batchId";
            //列
            c1FlexGrid3.Cols[4].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 4, 1, 4);  //合并区域
            rng.Data = "单位";
            c1FlexGrid3.Cols[4].Name = "unitName";
            //列
            c1FlexGrid3.Cols[5].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 5, 1, 5);  //合并区域
            rng.Data = "领用量A";
            c1FlexGrid3.Cols[5].Name = "needFQty";
            c1FlexGrid3.Cols[5].DataType= typeof(decimal);
            c1FlexGrid3.Cols[5].Format = "N4";
            //列
            c1FlexGrid3.Cols[6].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 6, 1, 6);  //合并区域
            rng.Data = "产品使用量B";
            c1FlexGrid3.Cols[6].Name = "useFQty";
            c1FlexGrid3.Cols[6].DataType = typeof(decimal);
            c1FlexGrid3.Cols[6].Format = "N4";
            c1FlexGrid3.Cols[6].Style = this.c1FlexGrid1.Styles["ColumnColor"];


            Column stockInfo = c1FlexGrid3.Cols[6];
            stockInfo.Editor = c1ComboStock;



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x

4 个回复

倒序浏览
lhx74cn
初级会员   /  发表于:2021-4-22 08:30:56
沙发
主要是下列代码引起的上述问题。           
      //列
            c1FlexGrid3.Rows[0].AllowMerging = true;
            rng = c1FlexGrid3.GetCellRange(0, 7, 0, 8);  //合并区域
            rng.Data = "损耗C";
            //列
            c1FlexGrid3.Rows[1][7] = "包装损耗";
            c1FlexGrid3.Cols[7].Name = "packFQty";
            c1FlexGrid3.Cols[7].DataType = typeof(decimal);
            c1FlexGrid3.Cols[7].Format = "N4";
            c1FlexGrid3.Cols[7].Style = this.c1FlexGrid1.Styles["ColumnColor"];
            //列
            c1FlexGrid3.Rows[1][8] = "来料缺陷";
            c1FlexGrid3.Cols[8].Name = "incomFQty";
            c1FlexGrid3.Cols[8].DataType = typeof(decimal);
            c1FlexGrid3.Cols[8].Format = "N4";
            c1FlexGrid3.Cols[8].Style = this.c1FlexGrid1.Styles["ColumnColor"];
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-4-22 09:27:58
板凳
本帖最后由 Richard.Ma 于 2021-4-27 10:18 编辑

你好,通过你的代码进行了测试,只有再第6列才是下拉框,其他列仍然是正常的文本编辑,如果问题未解决的话,请上传一个demo上来

回复 使用道具 举报
lhx74cn
初级会员   /  发表于:2021-5-5 16:17:45
地板
谢谢!我已通过其它方法处理。
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-5-6 09:10:35
5#
好的,也欢迎您分享解决问题的方法。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部