本文整理汇总了C#中WebBrowser.FindElementSafe方法的典型用法代码示例。如果您正苦于以下问题:C# WebBrowser.FindElementSafe方法的具体用法?C# WebBrowser.FindElementSafe怎么用?C# WebBrowser.FindElementSafe使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类WebBrowser
的用法示例。
在下文中一共展示了WebBrowser.FindElementSafe方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: InternalSignIn
private bool InternalSignIn(WebBrowser browser)
{
browser.NavigateToBasePage();
if (!String.IsNullOrEmpty(UserLogin))
{
WebElementExtensions.WaitForElement(
browser.WebDriver,
TimeSpan.FromSeconds(5),
By.Id("ctl00_FullRegion_LoginControl_UserName"));
var userNameElement = browser.FindElementSafe(By.Id("ctl00_FullRegion_LoginControl_UserName"));
if (userNameElement == null || !userNameElement.Displayed)
{
Console.WriteLine("Login control not found");
Console.WriteLine("URL: {0} ", browser.WebDriver.Url);
return false;
}
browser.WebDriver.FindElement(By.Id("ctl00_FullRegion_LoginControl_UserName")).Clear();
browser.WebDriver.FindElement(By.Id("ctl00_FullRegion_LoginControl_UserName")).SendKeys(UserLogin);
browser.WebDriver.FindElement(By.Id("ctl00_FullRegion_LoginControl_Password")).Clear();
browser.WebDriver.FindElement(By.Id("ctl00_FullRegion_LoginControl_Password")).SendKeys(UserPassword);
browser.WebDriver.FindElement(By.Id("ctl00_FullRegion_LoginControl_Button1")).ClickAndWaitForPageToLoad(browser.WebDriver);
//wait for serwer response
var cookieName = browser.WebDriver.Manage().Cookies.GetCookieNamed(".EPiServerLogin");
int loginWaitCount = 10;
while(cookieName == null)
{
Console.WriteLine("Auth cookie not found, retry ");
if(loginWaitCount <= 0)
break;
loginWaitCount--;
Thread.Sleep(250); //TODO: read from configuration
cookieName = browser.WebDriver.Manage().Cookies.GetCookieNamed(".EPiServerLogin");
}
return cookieName != null;
}
return true;
}