PDA

View Full Version : سوال: پر کردن تکست باکس یک صفحه وب با استفاده از وب بروزر



abolfazl_d_sh
جمعه 06 تیر 1393, 13:31 عصر
سلام

چه جوری مقدار یک تکست باکس مجود در یک صفحه وب رو با استفاده از وب بروزر تغییر بدم؟
من از کد زیر استفاده کردم و در قسمت GetElementById آیدی تکست باکسو که از توی کد های صفجه پیدا کردم رو قرار دادم ولی با خطای System.NullReferenceException مواجه شدم.




private void button1_Click(object sender, EventArgs e)
{
webBrowser1.Navigate("myurl"); //site url
webBrowser1.DocumentCompleted += new WebBrowserDocumentCompletedEventHandler(web_h);
}

private void web_h(object sender, WebBrowserDocumentCompletedEventArgs e)
{
WebBrowser b = (WebBrowser)sender;
b.Document.GetElementById("chatname_moisrex").InnerText = "A.D.S"; //fill textbox
b.Document.GetElementById("chaturl_moisrex").InnerText = "سلام"; //fill textbox
b.Document.GetElementById("for_disabled").InvokeMember("click"); //submit butoon


}




آیدی تکست باکس ها و باتن رو هم از اینجا پیدا کردم



<input id="chatname_moisrex" type="text">
<input type="url" style="direction:ltr;" id="chaturl_moisrex">
<button id="for_disabled" type="submit">ارسال</button>


ممنون

hadi46
شنبه 07 تیر 1393, 07:47 صبح
سلام
برای مقدار دهی از این دستور استفاده کن و یا همون دستوراتی رو که نوشتی مستقیم از خود webBrowser1 استفاده کن چون شئی که ساختی حاوی مقادیر تکست باکس ها نیست

webBrowser1.Document.GetElementById("chatname_moisrex").SetAttribute("value","سلام" );

abolfazl_d_sh
شنبه 07 تیر 1393, 12:00 عصر
سلام
برای مقدار دهی از این دستور استفاده کن و یا همون دستوراتی رو که نوشتی مستقیم از خود webBrowser1 استفاده کن چون شئی که ساختی حاوی مقادیر تکست باکس ها نیست

webBrowser1.Document.GetElementById("chatname_moisrex").SetAttribute("value","سلام" );


من کد شما رو نوشتم ولی ارور میده

این کد رو نوشتم


webBrowser1.Document.GetElementById("<font color="#000000"><span style="font-family: Consolas">chatname_moisrex</span></font>").SetAttribute("value","سلام" );

aliagamon
شنبه 07 تیر 1393, 12:46 عصر
منظورتون این کده دیگه ؟:

webBrowser1.Document.GetElementById("chatname_moisrex").SetAttribute("value","سلام" );