繁体   English   中英

如何在不使用C#按住CTRL键的情况下在UI网格中选择多行?

[英]How to select multiple rows in a UI grid without holding CTRL key using C#?

我有一个用Angular编写的表,当我编写下面的代码时,我无法单击以选择多行(它适用于下面的表示例)。 对于我的工作表,它只允许我一次选择一行,因此循环不起作用。 我的问题是如何选择UI网格表中的所有行?

我尝试编写一个循环以单击直到到达最后一行,但是对于正在工作的Angular站点,它一次只能选择一行。 我不能使用CTRL键,因为它需要在没有用户交互的情况下运行。 我已经研究了硒类的Actions类,但无法正常使用。

class Program
 {
    static void Main(string[] args)
    {
        IWebElement tableElement;

        String _address = "https://datatables.net/examples/api/select_row.html";

            IWebDriver _driver = new ChromeDriver();

            _driver.Navigate().GoToUrl(_address);
            tableElement = _driver.FindElement(By.Id("example"));

        Actions actions = new Actions(_driver);

        var noRows = _driver.FindElements(By.XPath("//table[@id='example']/tbody/tr"));

        for (int i = 0; i < noRows.Count; i++)
        {
            noRows[i].Click();
        }

        Console.Write("ALl lines seleected");
    }
  }
}

在此处输入图片说明

我通过添加这一行来解决

actions.KeyDown(Keys.Control).Click(gridTotal [1])。KeyUp(Keys.Control).Build()。Perform();

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM