关于ComboBox控件的一个问题,请高手来解决,公司给我的时间不多了,请大家一定来帮忙,分还是可以加的!!!!关键是解决问题!!

fengxin107 2003-10-10 10:00:25
private void bd()
{
nian.DataSource = 定义表下拉表();
nian.DisplayMember = "年";
nian.ValueMember = "值";
}


private DataTable 定义结存表()
{
DataTable dt =new DataTable();
DataRow objR;


dt.Columns.Add(new DataColumn("id",System.Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("月份",System.Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("状态",System.Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("实际结存时间",System.Type.GetType("System.String")));
dt.Columns.Add(new DataColumn("结存月标准字",System.Type.GetType("System.String")));

string sjstr="";
string strss="";
for(int i=1;i<13;i++)
{
objR = dt.NewRow();
sjstr = nian.SelectedValue.ToString() +"-"+i.ToString(); //问题就在这里,我得不到nian这ComboBox控件的选择值,得到的是一个"System.Data.DataRowView"

strss = Convert.ToDateTime(sjstr+"-1").Year.ToString();

}
}






private void frmDepotEndStorage_Load(object sender, System.EventArgs e)
{
bd();

}
...全文
41 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
LA003 2003-10-10
  • 打赏
  • 举报
回复
应该你的COMBO 显示有问题,
我曾经也遇到过,代码没有一点错~~ 只是把那段代码copy到其他地方,就好了,
再copy 回来,也可以了。 我自己现在还不明白是怎么回事 :)
leoduan 2003-10-10
  • 打赏
  • 举报
回复

displaymember 和valuemember是区分大小写的, 请确定输入的字段名称的正确性。
LA003 2003-10-10
  • 打赏
  • 举报
回复
DATASOURCE ,DISPLAYMEMBER,VALUEMEMBER 绑定好了,
如果显示没有问题的话,SELECTVALUE 是可以的
你的COMBO显示有没有问题?
amoxicillin 2003-10-10
  • 打赏
  • 举报
回复
》》》代码完整点好不
只要加一个dataView的定义就可以啦
DataSet ds;
//对DataSet的定义可以自己写吧
DataTable table = ds.Tables["tablename"];
DataView dv = table.DefaultView;
amoxicillin 2003-10-10
  • 打赏
  • 举报
回复
我遇到过和你一样的问题,当时是这么解决的:采用数据绑定comboBox的方法,然后
private void comboBox1_SelectedIndexChanged(object sender, System.EventArgs e)
{
DataTable dt=ds.Tables["tablename"];
DataColumn dc =(DataColumn)dt.Columns["columnname"];
DataRowView dr = (DataRowView)this.comboBox1.SelectedItem;
select = dr.Row[dc].ToString();
}
select就是你最终要得到的那个ComboBox控件的选择值
不知道能不能解决你的问题
LA003 2003-10-10
  • 打赏
  • 举报
回复
代码完整点,好不?
amoxicillin 2003-10-10
  • 打赏
  • 举报
回复
你试试这个.不要绑定,dv是你定义的dataview
foreach(DataRowView drview in dv)
{
for(int i = 0; i < dv.Table.Columns.Count; i++)
{
comboBox1.Items.Add (drview[i].ToString());

}
}
fengxin107 2003-10-10
  • 打赏
  • 举报
回复
sjstr = nian.SelectedValue.ToString() +"-"+i.ToString();
得到的是"System.Data.DataRowView-1"
下面转成DataTime时就会出错

nian.SelectedValue.ToString()我想得到的值是 "2003"
sjstr 我想得到的值是 "2003-1"

关键是我现在得到的nian.SelectedValue.ToString()值是System.Data.DataRowView

是不是我在绑定nian时的问题,有没有人用过这种方法绑定呢??


to 2002pine(我学习,我存在)
谢谢你,你的方法,我试过了,还是同一个错误.

有没有人来帮助我啊

cdbnzc 2003-10-10
  • 打赏
  • 举报
回复
同意=> 2002pine(我学习,我存在)
2002pine 2003-10-10
  • 打赏
  • 举报
回复
sjstr = nian.Items[nian.SelectedIndex].ToString() +"-"+i.ToString();
6HZ 2003-10-10
  • 打赏
  • 举报
回复
执行时有什么错误提示?

110,533

社区成员

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

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

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