我正在使用winform和C#,我在列表框中添加项目
5<-----focus on first element
8
9
99
100
默认焦点来自第一个元素(如5)。但我正在尝试,如果我在列表框中添加新元素,如77 然后重点将放在77
5
8
9
77 <---here i m trying the focus
99
100
我试过这个,但这不起作用
listBox1.SelectedIndex = listBox1.Items.Count - 1;
listBox1.Focus();
感谢
答案 0 :(得分:0)
我没有找到最新添加项目到ListBox的方法。但是,您可以将最后添加的项目保存在某个变量中,然后浏览整个listBox并搜索具有相同值的项目(仅当值是唯一的时才能正常工作)。像这样的东西
listBox1.SelectedIndex = listBox1.Items.IndexOf(yourNumber);
答案 1 :(得分:0)
每当您将新项目添加到列表框时,您可以设置焦点,如下所示,
listBox1.Items.Add(77);
listBox1.SetSelected(listBox1.Items.IndexOf(77), true);
答案 2 :(得分:0)
首先使用select MAX(col.name)查找数据库中的最后一个插入值,或者选择top 1 col.name(如果使用的是SQL Server), 并将其存储在字符串,标签或其他内容中, 然后使用“listBox1.Items.FindByText()”来设置焦点...
string x;
sqlconnection con="...........";
con.open();
sqlcommand cmd = new sqlcommand("select top 1 (your columnname) from yourtable",con);
x = cmd.ExecuteScalar().ToString();
con.Close();
现在你得到了最后一个插入的项目,然后是
if (listBox1.Items.FindByText(x)!= null)
listBox1.Items.FindByText(x).Selected = true;
答案 3 :(得分:0)
Add()方法返回添加的rencently元素的索引。
listBox1.SelectedIndex = listBox1.Items.Add(77);