Example #1
0
        public int GetColumnPosition(string columnname)
        {
            ColumnNames.ContainsIgnoreCase(columnname).Should().BeTrue($"The column name specified [{columnname}] does not exist in the Grid");

            return(RawElement.FindElements(By.CssSelector("thead>tr>th")).Union(RawElement.FindElements(By.CssSelector("tbody>tr>th")))
                   .Select(x => x.Text)
                   .Select((name, index) => new { Name = name, Index = index })
                   .Where(x => x.Name.Contains(columnname, StringComparison.CurrentCultureIgnoreCase))
                   .Select(x => x.Index)
                   .FirstOrDefault() + 1);
        }
Example #2
0
        public TableControl(
            IWebDriver driver,
            By selector,
            BaseControl parentControl = null,
            By loadWaitingSelector    = null) : base(driver, selector, parentControl)
        {
            {
                if (WaitUntilElementVisible(waitTimeSec: 2, throwExceptionWhenNotFound: false))
                {
                    _totalColumns = RawElement.FindElements(By.CssSelector("thead>tr>th")).Count;
                }
                else
                {
                    RenderedInUi = false;
                }
            }

            LoadWaitingSelector = loadWaitingSelector;
        }