找回密码
 立即注册

QQ登录

只需一步,快速开始

rommyjob

高级会员

8

主题

19

帖子

1103

积分

高级会员

积分
1103

活字格认证

rommyjob
高级会员   /  发表于:2014-6-24 17:14  /   查看:8127  /  回复:8
如标题,我想在winform中将C1List的列设置为不同的列宽,但是设计状态下是不同的,而运行的时候就总是相等,而且值很小。谢谢啦
如图:

本帖子中包含更多资源

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

x

8 个回复

倒序浏览
Alice
社区贡献组   /  发表于:2014-6-25 10:11:00
沙发
回复 1楼rommyjob的帖子

根据你的需求,设置不同列的宽度,步骤如下:
1.从C1List中获取C1DisplayColumns
2.通过设置C1DisplayColumnCollection[column].Width的值,给不同列设置列宽。
参考代码如下:
  1. //获取C1DisplayColumnCollection
  2. C1DisplayColumnCollection cols = this.c1List1.Splits[0].DisplayColumns;
  3. //设置第一列列宽
  4. cols[0].Width = 50 ;
  5. //设置第二列列宽是自动根据文字大小调节
  6. cols[1].AutoSize();
  7. //设置第三列列宽
  8. cols[2].Width = 100;
复制代码

你可以使用上述方法重新尝试,看看可以解决你的问题不?
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
rommyjob
高级会员   /  发表于:2014-6-25 13:44:00
板凳
回复 2楼Alice的帖子

谢谢你的回答,我测试了,当DataMode为Nomal时,你提供的方法可以,但是如果DataMode为AddItem时,就不管用了,请问AddItem时,如何实现设置列宽呢?谢谢
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-6-25 19:13:00
地板
回复 3楼rommyjob的帖子

当DataMode为AddItem的时候,就必须由应用程序自己提供和维护数据。这个时候需要使用C1List.AddItem, C1List.ClearItem, C1List.InsertItem, C1List.RemoveItem方法来手动的计算数据。

我测试下面的代码,C1List的列宽可以通过C1List.Splits[0].DisplayColumns[column].Width设置。
参考代码:
  1. this.c1List1.DataMode = DataModeEnum.AddItem;
  2.             this.c1List1.AddItem("Smith;John;210 Elm St.");
  3.             this.c1List1.AddItem("Doe;Jane;100 Oak St.");

  4.             C1DisplayColumnCollection cols = this.c1List1.Splits[0].DisplayColumns;
  5.             cols[0].Width = 100;
  6.             cols[1].Width = 10;
  7.             cols[2].AutoSize();
复制代码


运行出来的效果如下:


你测试下我上述代码,在你那里可以实现不?
如果依然有问题,不知道你怎么样给C1List提供的数据,是数据绑定还是自己手动写的? 能否给你的代码我帮你看看?

本帖子中包含更多资源

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

x
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
rommyjob
高级会员   /  发表于:2014-6-27 16:59:00
5#
问题解决,非常感谢Alice~~·
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-6-27 17:14:00
6#
回复 5楼rommyjob的帖子

不客气,欢迎有问题开新帖沟通。

评分

参与人数 1满意度 +5 收起 理由
rommyjob + 5 问题解决,非常感谢

查看全部评分

请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
Syainn
初级会员   /  发表于:2014-10-14 12:15:00
7#

InputPanel InputImage问题

回复 6楼Alice的帖子

你好。在试用InputPanel的时候,发现一个问题。
如果使用了InputPanel里面的InputImage,并且跟datatable中一个数据块相关联。
然后提供了一个操作,双击该控件,弹出对话框更换此图片,同时跟其关联的datatable中的数据也应该跟着修改。
但是如果InputImage中图片修改后,会造成跟其关联的Datatable的rowchanged事件无法触发。如果修改了图片,即使其他
textbox的内容作了修改,也无法触发rowchanged事件。
麻烦帮忙解答一下。
回复 使用道具 举报
Syainn
初级会员   /  发表于:2014-10-14 14:28:00
8#
回复 7楼Syainn的帖子

这个问题已经解决了。直接把新的图片的数据复制给rowdata中对应的项,而不是转化为图片复制给该InputImage控件。
回复 使用道具 举报
Alice
社区贡献组   /  发表于:2014-10-14 14:38:00
9#
回复 8楼Syainn的帖子

好的。有问题欢迎开新帖。
请点击评分,对我的服务做出评价!  5分为非常满意!

葡萄城控件服务团队

官方网站: http://www.gcpowertools.com.cn
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部