C# 为什么不';默认情况下,我的winform listview项目是否显示为选中?

C# 为什么不';默认情况下,我的winform listview项目是否显示为选中?,c#,winforms,listview,vsto,C#,Winforms,Listview,Vsto,我有一个winforms应用程序和listview。通过可视化设计器,我添加了一组项,并在所有项上将“checked”属性设置为true。当我启动我的应用程序时,没有一个项目被选中,这看起来很奇怪 即使在我尝试添加此代码之后: for (int i = 0; i < listView1.Items.Count; i++) { listView1.Items[i].Selected = true; } for(int

我有一个winforms应用程序和listview。通过可视化设计器,我添加了一组项,并在所有项上将“checked”属性设置为true。当我启动我的应用程序时,没有一个项目被选中,这看起来很奇怪

即使在我尝试添加此代码之后:

         for (int i = 0; i < listView1.Items.Count; i++)
        {
            listView1.Items[i].Selected = true;
        }
for(int i=0;i
当我启动我的应用程序(它是vsto应用程序)时,不会选择任何项目。我选择了LargeIconView(不确定这是否有区别)


如何将listview设置为在启动时默认检查所有项目?

代码无法工作的原因是
listview
控件没有焦点。你可以做的两件事是

1) 将控件的
TabIndex
属性设置为窗体上的最低值(可能为0)

2) 以编程方式选择ListView

private void Form1_Load(object sender, EventArgs e)
{
   listView1.Select();
   for (int i = 0; i < listView1.Items.Count; i++)
   {
       listView1.Items[i].Selected = true;
   }
}
private void Form1\u加载(对象发送方,事件参数e)
{
listView1.Select();
对于(int i=0;i
仅当ListView的复选框属性设置为True时,checked属性才相关。“选中”与“选定”不相同

您选择所有项目的代码对我有效。但也许,正如keyboardP所说,你的问题与专注有关已编辑:是的,它只起作用,因为我正在测试它,而这是我表单上唯一的控件。

“如何在启动时默认选中列表视图中的所有项目?”

更改:

        listView1.Items[i].Selected = true;
致:


如果您已经通过IDE将它们全部设置为checked,则不确定为什么设置没有“粘滞”。加载表单时是否修改ListView的内容?

将ListView的HideSelection属性设置为False。如果您现在看到它们被选中,但使用浅灰色选择颜色,那么这只是焦点问题。
        listView1.Items[i].Checked = true;