删除 MultiSimple 选择列表框中的第一项选择(Window 表单应用程序)
Remove 1st item selection in MultiSimple selection listbox (Window Forms Application)
我有一个带有 selectMultiSimple 离子模式的列表框。在 form_load 中,我有获取数据源的代码,然后是 select 我想要从该列表中获取的默认项。此列表包含我数据库中的所有 table,我想将 select 用户 table 作为默认项。但是,列表中的第一个 table 始终与用户 table 一起突出显示。如何避免第一个 table 被默认自动 selected?
下面是我用来填充列表的代码
var lwDBConn = Properties.Settings.Default.Target_DBConnectionString; List<string> tableNames = new List<string>();
using (SqlConnection conn = new SqlConnection(lwDBConn))
{
conn.Open();
DataTable t = conn.GetSchema("Tables");
foreach (DataRow row in t.Rows)
{
tableNames.Add(row[2].ToString());
}
conn.Close();
}
tableNames.Sort();
lstSQL.DataSource = tableNames;
lstSQL.SetSelected(lstSQL.Items.IndexOf("Users"), true);
我读过其他关于避免第一项被自动 selected 的帖子,但它不适合我的情况。
初始化 ListBox 数据源后,您需要立即调用 listBox.ClearSelected。
要仅删除第一项的选择,您可以调用 lstSQL.SetSelected(0, false);
我有一个带有 selectMultiSimple 离子模式的列表框。在 form_load 中,我有获取数据源的代码,然后是 select 我想要从该列表中获取的默认项。此列表包含我数据库中的所有 table,我想将 select 用户 table 作为默认项。但是,列表中的第一个 table 始终与用户 table 一起突出显示。如何避免第一个 table 被默认自动 selected?
下面是我用来填充列表的代码
var lwDBConn = Properties.Settings.Default.Target_DBConnectionString; List<string> tableNames = new List<string>();
using (SqlConnection conn = new SqlConnection(lwDBConn))
{
conn.Open();
DataTable t = conn.GetSchema("Tables");
foreach (DataRow row in t.Rows)
{
tableNames.Add(row[2].ToString());
}
conn.Close();
}
tableNames.Sort();
lstSQL.DataSource = tableNames;
lstSQL.SetSelected(lstSQL.Items.IndexOf("Users"), true);
我读过其他关于避免第一项被自动 selected 的帖子,但它不适合我的情况。
初始化 ListBox 数据源后,您需要立即调用 listBox.ClearSelected。
要仅删除第一项的选择,您可以调用 lstSQL.SetSelected(0, false);