winform中的comboBox3.SelectedValue = currentYear.ToString();没有显示???
protectedvoidBindYear(){comboBox3.Items.Clear();intstartYear=DateTime.Now.Year-10;int...
protected void BindYear()
{
comboBox3.Items.Clear();
int startYear = DateTime.Now.Year - 10;
int currentYear = DateTime.Now.Year;
for (int i = startYear; i <= currentYear+10; i++)
{
comboBox3.Items.Add(i.ToString());
}
comboBox3.SelectedValue = currentYear.ToString();
}
comobox3没有显示默认的,下拉列表是有的。
http://zhidao.baidu.com/question/251365502.html
我在这里也问了,里面更详细、、、 展开
{
comboBox3.Items.Clear();
int startYear = DateTime.Now.Year - 10;
int currentYear = DateTime.Now.Year;
for (int i = startYear; i <= currentYear+10; i++)
{
comboBox3.Items.Add(i.ToString());
}
comboBox3.SelectedValue = currentYear.ToString();
}
comobox3没有显示默认的,下拉列表是有的。
http://zhidao.baidu.com/question/251365502.html
我在这里也问了,里面更详细、、、 展开
5个回答
展开全部
用comboBox.SlectedIndex=1;来定位
如果你想达到你上面大妈一样的效果的话,可以将int 1 定义在for外面
然后用comboBox.SlectedIndex=i 来实现。
不好意思上面写错了,你可以另外定义一个变量 来存储地址 上面代码可以改为:
protected void BindYear()
{
comboBox3.Items.Clear();
int startYear = DateTime.Now.Year - 10;
int currentYear = DateTime.Now.Year;
int j=0;
for (int i = startYear; i <= currentYear+10; i++)
{
comboBox3.Items.Add(i.ToString());
j++;
}
comboBox3.SelectedIndex=j-1;
}
string year = comboBox3.SelectedValue .ToString ();
未将对象引用设置到对象的实例。
直接改成string year = comboBox3.text 就好了
如果你想达到你上面大妈一样的效果的话,可以将int 1 定义在for外面
然后用comboBox.SlectedIndex=i 来实现。
不好意思上面写错了,你可以另外定义一个变量 来存储地址 上面代码可以改为:
protected void BindYear()
{
comboBox3.Items.Clear();
int startYear = DateTime.Now.Year - 10;
int currentYear = DateTime.Now.Year;
int j=0;
for (int i = startYear; i <= currentYear+10; i++)
{
comboBox3.Items.Add(i.ToString());
j++;
}
comboBox3.SelectedIndex=j-1;
}
string year = comboBox3.SelectedValue .ToString ();
未将对象引用设置到对象的实例。
直接改成string year = comboBox3.text 就好了
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把comboBox3.SelectedValue = currentYear.ToString();
改成 comboBox1.Text = currentYear.ToString();
这样就行了
winform里默认显示是用Text 属性的
改成 comboBox1.Text = currentYear.ToString();
这样就行了
winform里默认显示是用Text 属性的
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
protected void BindYear()
{
comboBox3.Items.Clear();
int startYear = DateTime.Now.Year - 10;
int currentYear = DateTime.Now.Year;
for (int i = startYear; i <= currentYear+10; i++)
{
comboBox3.Items.Add(i.ToString());
}
comboBox3.Text = currentYear.ToString(); //这里用 Text
}
protected void BindDay()
{
comboBox5.Items.Clear();
string year = comboBox3.Text; //这里用 Text
string month = comboBox4.Text; //这里用 Text
int days = DateTime.DaysInMonth(int.Parse(year), int.Parse(month));
for (int i = 1; i <= days; i++)
{
comboBox5.Items.Add(i.ToString());
}
}
{
comboBox3.Items.Clear();
int startYear = DateTime.Now.Year - 10;
int currentYear = DateTime.Now.Year;
for (int i = startYear; i <= currentYear+10; i++)
{
comboBox3.Items.Add(i.ToString());
}
comboBox3.Text = currentYear.ToString(); //这里用 Text
}
protected void BindDay()
{
comboBox5.Items.Clear();
string year = comboBox3.Text; //这里用 Text
string month = comboBox4.Text; //这里用 Text
int days = DateTime.DaysInMonth(int.Parse(year), int.Parse(month));
for (int i = 1; i <= days; i++)
{
comboBox5.Items.Add(i.ToString());
}
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
因为DataTime.Now.Year的类型为DateTime并不为int型
int startYear=Convert.ToInt32(DateTime.Now.Year.AddYear(-10));
int currentYear=Convert.ToInt32(DateTime.Now.Year);
还要将comboBox3.SelectedValue = currentYear.ToString(); 改为comboBox3.SelectedItem=currentYear;
int startYear=Convert.ToInt32(DateTime.Now.Year.AddYear(-10));
int currentYear=Convert.ToInt32(DateTime.Now.Year);
还要将comboBox3.SelectedValue = currentYear.ToString(); 改为comboBox3.SelectedItem=currentYear;
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
不能这样设置选择的默认值,你只能通过FindString(比如:cmbDrpDeptList.SelectedIndex = cmbDrpDeptList.FindString("请选择部门");)或者SelectedIndex = comobox3.Items.IndexOf("你的Text");
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询