2012-04-10 4 views
-2

どのようにテキストボックスの値を取得してrichtextboxに転送しますか?テキストボックスの値を取得してrichtextboxにどのように転送しますか?

私がクリックした場合、それは、その後に入力された値をコピーすることを、私はこのButton1をしたいButton1を含むWindowsアプリケーションのフォーム、リッチテキストボックス、およびウェブブラウザ(ログインfacebookに設定。)

を作成facebook.comの登録フォームをクリックし、それをrichtextboxに貼り付けます。

これらは、テキストボックスのIDです。

"ファーストネーム"
"姓"
"reg_email__"
"reg_email_confirmation__"
"reg_passwd__"
"性別"
"birthday_month"
"birthday_day"
"birthday_year"

どのようにプログラムで、Facebookのテキストボックスに入力された値をrichtextboxに転送するのですか?

+4

古典的な答え[何を試しましたか](http://mattgemmell.com/2008/12/08/what-have-you-tried/) –

+1

FacebookにはAPIがありますが、右?それはこれを行う*正しい*方法だろう... –

答えて

0

WinFormsを使用していると仮定すると、コントロールのDocumentプロパティを使用できます。これは、タイプHtmlDocumentのオブジェクトを返します。 HtmlDocumentは、HtmlElementのオブジェクトを返すメソッドGetElementByIdを順に持っています。 OuterHtmlプロパティには、最終的にテキストボックスに関する情報が含まれています。 Regex表現を使用すると、必要な情報

HtmlElement tb = webBrowser1.Document.GetElementById("firstname"); 

string outerHtml = tb.OuterHtml; 
// Yields a text which looks like this 
// <INPUT id=firstname class=inputtext value=SomeValue type=text name=firstname> 

string text = Regex.Match(outerHtml, @"value=(.*) type=text").Groups[1].Value; 
// text => "SomeValue" 
私はHTML-DOMオブジェクトモデルにアクセスすることができることを好むだろう

を抽出することができます。しかし、それはC#から隠されているようです。


EDIT:

コンボボックスは、情報の異なる種類をもたらします。ここではInnerHtmlを使用しています。

HtmlElement cb = webBrowser1.Document.GetElementById("sex"); 

string innerHtml = cb.InnerHtml; 
// Yields a text which looks like this where the selected option is marked with "selected" 
// <OPTION value=0>Select Sex:</OPTION><OPTION value=1>Female</OPTION><OPTION selected value=2>Male</OPTION> 

Match match = Regex.Match(innerHtml, @"<OPTION selected value=(\d+)>(.*?)</OPTION>"); 
string optionValue = match.Groups[1].Value; 
string optionText = match.Groups[2].Value; 
0

あなたにプログラムを書く人がいますか?疑念が起こるでしょう。

「なぜですか?」という質問を無視して、私はいくつかの指摘をします。 最初に、あなたが受け入れているページのソースを見てください.HTMLソースをテキストとしてスキャンし、タグを部分的に取り除くだけで、固定フォーマット(特に固定した一意の名前を持つテキストボックス)で、あなたが望む名前で。ビルド時にテキストボックスに値が設定されていない場合(つまり、値がビューソースにない場合)、DOMを通過してコントロールに個別にアクセスする必要があります。

このページにアクセスする方法や時期によっては、明らかにセキュリティ上の理由から、これらのフィールドにFBが設定されておらず、ユーザーの入力としてしか機能しない場合があります。以前)。

関連する問題