private List <int> GetSectionIndexes(TabPage zakladka, string sekcja) { List <int> IndexList = new List <int>(); var AllSections = zakladka.Find <Button>("./button[@automationid='ExpanderButton' and @visible='true']"); foreach (Button singleSection in AllSections) { if (singleSection.Text == sekcja) { int desiredSectionIndex = singleSection.Element.ChildIndex; int desiredSectionListIndex = AllSections.IndexOf(singleSection); IndexList.Add(desiredSectionIndex); if (AllSections.Count() == 1 || desiredSectionListIndex == AllSections.Count() - 1) //jest tylko jedna sekcja lub kiedy szukana sekcja jest ostatnia { IndexList.Add(1000); //przepraszam, ale tak bedzie wygodniej i szybciej, niz ladowac wszystkie elementy na zakladce i szukac indeksu ostatniego break; } if (AllSections.Count() > 1) //jest wiecej niz 1 sekcja { int nextSectionIndex = AllSections[desiredSectionListIndex + 1].Element.ChildIndex; IndexList.Add(nextSectionIndex); } } } return(IndexList); }
private List <Text> GetEditableTextboxes(TabPage zakladka, int CIStart, int CIStop) //zbiera wszystkie edytowalne tekstboksy z zakladki { var wszystkieTekstboksy = zakladka.Find <Text>("./text[@controltype='Edit' and @visible='true']"); List <Text> tekstboksy = new List <Text>(); foreach (Text tekstboks in wszystkieTekstboksy) { if (tekstboks.Element.ChildIndex > CIStart && tekstboks.Element.ChildIndex < CIStop) { tekstboksy.Add(tekstboks); } } return(tekstboksy); }
private List <Text> GetTextboxLabels(TabPage zakladka, int CIStart, int CIStop) //to nie sa labelki, tylko texty, ale labelki brzmi logiczniej/jasniej { var wszystkieLabelki = zakladka.Find <Text>("./text[@controltype='Text' and @visible='true']"); wszystkieLabelki.RemoveAt(0); //usuwa pierwszy element, czyli tekstboks opisujacy nazwe zakladki List <Text> labelki = new List <Text>(); foreach (Text labelka in wszystkieLabelki) { if (labelka.Element.ChildIndex > CIStart && labelka.Element.ChildIndex < CIStop) { labelki.Add(labelka); } } return(labelki); }
private IList <Button> GetButtonByNameAndSection(int CIStart, int CIEnd, TabPage tabpage) //funkcja do szukania buttonow w sekcji, przy czym sekcja zawiera sie miedzy jakimis childindexami { var AllButtons = tabpage.Find <Button>(string.Format("./button[@visible='true']")); return(GetButtonBetweenIndexes(AllButtons, CIStart, CIEnd)); }