DataGridView DataGridViewComboBoxColumn列的clear方法无效!

FirstMrWu 2011-11-10 06:54:30
插入列:

DataGridViewComboBoxColumn c = new DataGridViewComboBoxColumn();
c.Name = "deName";
c.HeaderText = "数据元名称";
c.Width = 100;
dataGridView.Columns.Insert(2, c);


if (((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.Count > 0)
{

((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.Clear();
}

然后在删除其中的项的时候不起作用啊。为什么?如何删除?remove方法也不行啊。
...全文
194 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
FirstMrWu 2011-11-11
  • 打赏
  • 举报
回复
remove也没效果。。。但也不抛异常。



int a = ((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.Count;


if (a > 0)
{
for (int j = a-1; j >= 0; j--)
{
try
{
MessageBox.Show(a.ToString());
((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.RemoveAt(j);
}
catch(Exception e1)
{
MessageBox.Show(e1.Message);
}
}
}
FirstMrWu 2011-11-11
  • 打赏
  • 举报
回复
增加的部分如下:

for (int i = 0; i < list.Count; i++)//取出deid和cname 加入comobox
{
string s = list[i].ToString();
string id = s.Remove(11);//标准id
string name = s.Remove(0, 13);
((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.Add(name);
//hs.Add(name, id);
}
string s1 = list[0].ToString();
string name1 = s1.Remove(0, 13);
((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Value = name1;//只是显示的效果其实并不是add的001 这个要和第一个值一样!!!

我是放在一个list中,读取list中内容,然后取出我想要的部分,再加入。
sdl2005lyx 2011-11-11
  • 打赏
  • 举报
回复
那把如何增加的那部分代码贴出来看看。。。
FirstMrWu 2011-11-11
  • 打赏
  • 举报
回复
4楼的大哥,这样也不行啊。刚试了。
原来那个列的item.count还是10条10条的增加的,改成这个好,直接20 30 40条这样的增加了。
快崩溃了。。。。
sdl2005lyx 2011-11-11
  • 打赏
  • 举报
回复
这样用:


((DataGridViewComboBoxColumn)dataGridView1.Columns[列索引]).Items.Clear();
FirstMrWu 2011-11-11
  • 打赏
  • 举报
回复
回1楼:datagridview的中其他列的数据是绑定的,但这列不是。
回2楼:这样转换以后,可以添加数据,即((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.add("001")是可以的。
如果不这么写,有没有别的更好的方法?
sdl2005lyx 2011-11-11
  • 打赏
  • 举报
回复
解决就好。。。
FirstMrWu 2011-11-11
  • 打赏
  • 举报
回复
各位,解决了。用clear()和remove()是可以的。是我程序另外地出问题了。
xienb 2011-11-10
  • 打赏
  • 举报
回复
((DataGridViewComboBoxCell)dataGridView.Rows[e.RowIndex].Cells["deName"]).Items.Clear();
不是这么写的吧 你搞个强制转换算是什么意思
www_1_1 2011-11-10
  • 打赏
  • 举报
回复
你的数据是绑定的吗???是的话好像是不能,我记得是,但不肯定,友情帮顶
内容概要:本文针对功率阶跃工况下光储虚拟同步发电机(VSG)并网系统存在的电能质量问题,提出一种自适应治理策略。通过Simulink搭建完整的光储VSG并网系统仿真模型,重点研究在功率突变条件下系统出现的频率波动、电压畸变及谐波增加等动态问题。所提策略结合VSG的惯量与阻尼特性,设计了参数自适应调节机制,实现对系统动态响应过程的有效调控,显著提升了并网电流波形质量与频率稳定性,增强了系统在强扰动工况下的鲁棒性与电能质量治理能力。; 适合人群:具备电力电子、自动控制理论及新能源并网技术基础的科研人员、电气工程及相关专业的硕士/博士研究生,以及从事微电网、储能系统、VSG控制研发的工程技术人员。; 使用场景及目标:①用于分析光储系统在功率阶跃等动态工况下的并网特性与电能质量演变规律;②为VSG关键控制参数(如惯量、阻尼)的自适应整定提供设计思路与仿真验证平台;③支撑高水平学术论文复现、科研课题攻关及实际工程项目的前期控制策略验证。; 阅读建议:建议结合Simulink仿真模型深入理解控制策略的实现逻辑,重点关注VSG惯量阻尼协同调节的自适应机制设计,可通过设置不同功率阶跃幅度、光照强度变化及负载投切等多场景进行仿真测试,全面评估策略的动态性能与适用边界。
内容概要:本文系统研究了基于ARIMA-CNN-LSTM的混合时间序预测模型,并提供了完整的Python代码实现。该模型融合传统统计方法ARIMA与深度学习模型CNN和LSTM的优势,充分发挥ARIMA在捕捉线性趋势与季节性特征方面的能力,以及CNN和LSTM在提取局部特征和建模长期依赖关系方面的强大性能,从而有效提升对复杂非线性时间序的预测精度。研究涵盖了数据预处理、模型构建、参数调优、训练与预测全流程,并通过实际案例验证模型在风电、光伏、负荷、电价等能源领域预测任务中的优越表现。文档还整合了电力系统、路径规划、信号处理等多个科研方向的仿真资源与代码示例,凸显其在学术研究与工程实践中的广泛应用价值。; 适合人群:具备一定Python编程基础和机器学习理论知识,从事科研或工程技术工作的研究人员,特别适用于关注时间序分析、深度学习建模的硕士生、博士生及行业从业者。; 使用场景及目标:①深入理解并掌握ARIMA与深度学习模型(如CNN、LSTM)融合的建模范式与技术细节;②应用于能源领域中风电出力、光伏发电、电力负荷及电价等关键变量的高精度预测;③为科研课题、学术论文复现、工程项目优化等提供可靠、可复用的代码框架与技术支持。; 阅读建议:建议结合所提供的Python代码进行动手实践,重点剖析数据预处理流程、混合模型架构设计及超参数调优策略,同时可参考文档中其他相关研究案例以拓宽技术视野和应用场景认知。

111,129

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Creator Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧