【问题标题】:Setting focus to listviews in the tabcontrol of a winform在 winform 的 tabcontrol 中将焦点设置为列表视图
【发布时间】:2013-10-07 07:19:25
【问题描述】:

在我的项目中,在一个表单中,tabcontrol 中有两个列表视图,我无法将焦点设置到两个列表视图项。我正在使用以下代码。问题是我只能在两者中选择一个列表视图。请告诉我在表单中选择两个列表视图的替代方法是什么。

    private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
    {
        BindData1();
        if (listViewClients.Items.Count > 0)
        {
            listViewClients.Items[0].Selected = true;
            listViewClients.Select();
        }

        if (listView1.Items.Count > 0)
        {
            listView1.Items[0].Selected = true;
            listView1.Select();
        }   
    }

【问题讨论】:

  • 不能同时聚焦两个控件
  • 是的,只有一个控件可以拥有焦点。这是标准,也是使用您的程序的用户所期望的。你想达到什么目的?
  • oops,,在选项卡控件中,两个选项卡分别用于“删除”和“更新”,有两个列表视图控件用于不同的操作。这就是为什么我需要将焦点集中在两个列表视图上。但是,谢谢,我将尝试在两个选项卡中使用一个列表视图。 --谢谢。
  • @karthikreddy 目前还不清楚为什么你想要这种不可能的奇怪行为。你的意思是你想让你的 ListViewItem 看起来像焦点一样,即使它没有焦点?
  • 尤里卡..我得到了解决方案。谢谢你们的cmets。

标签: c# winforms listview tabcontrol


【解决方案1】:
private void tabControl1_SelectedIndexChanged(object sender, EventArgs e)
    {
        BindData1();
        switch (this.tabControl1.SelectedTab.Name)
        {
            case "tpUpdate":
                 listViewClients.Items[0].Selected = true;
                 listViewClients.Select();
                  break;

                  case "tpDelete":
                  listView1.Items[0].Selected = true;
            listView1.Select();
               break;                     
        }                      
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-07
    • 1970-01-01
    • 2013-06-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多