Holding IWebElements as a collection in C#/Selenium when using [FindsBy] attribute
c#, pageobjects, selenium, selenium-webdriver, webdriver
Solution
Sorry guys, solved:
class TopPage {
TopPage(IWebDriver driver) {
PageFactory.InitElements(driver, this);
}
[FindsBy(How = How.CssSelector, Using = "ul.elements li")]
public IList<IWebElement> MyElements;
}
Use `IList`, not an `Array`. Thank you!
Problem
I'm trying to set multiple IWebElements to a collection using [FindsBy] attribute included in OpenQA.Selenium.Support.PageObjects, like following. Suppose I want to hold all "li" elements in instance variable "MyElements". HTML ``` <ul class="elements"> <li>e1</li> <li>e2</li> <li>e3</li> </ul> ``` C# ``` class TopPage { [FindsBy(How = How.CssSelector, Using = "ul.elements li")] public IWebElement[] MyElements; } ``` how can I make this work?