Postupy: Zobrazení webových odkazů pomocí ovládacího prvku Windows Forms RichTextBox
Ovládací prvek model Windows Forms RichTextBox může zobrazit webové odkazy jako barevné a podtržené. Můžete napsat kód, který otevře okno prohlížeče s webem zadaným v textu odkazu po kliknutí na odkaz.
Odkaz na webovou stránku pomocí ovládacího prvku RichTextBox
Text Nastavte vlastnost na řetězec, který obsahuje platnou adresu URL (například
https://www.microsoft.com/
).Ujistěte se, DetectUrls že je vlastnost nastavená na
true
(výchozí).Vytvořte novou globální instanci objektu Process .
Napište obslužnou rutinu LinkClicked události pro událost, která odešle prohlížeč požadovanému textu.
V následujícím příkladu LinkClicked událost otevře instanci aplikace Internet Explorer na adresu URL zadanou ve Text vlastnosti RichTextBox ovládacího prvku. Tento příklad předpokládá formulář s ovládacím RichTextBox prvku.
Důležité
Při volání Process.Start metody dojde k výjimce SecurityException , pokud kód spouštíte v kontextu částečné důvěryhodnosti kvůli nedostatečným oprávněním. Další informace naleznete v tématu Základy zabezpečení přístupu kódu.
Public p As New System.Diagnostics.Process Private Sub RichTextBox1_LinkClicked _ (ByVal sender As Object, ByVal e As _ System.Windows.Forms.LinkClickedEventArgs) _ Handles RichTextBox1.LinkClicked ' Call Process.Start method to open a browser ' with link text as URL. p = System.Diagnostics.Process.Start("IExplore.exe", e.LinkText) End Sub
public System.Diagnostics.Process p = new System.Diagnostics.Process(); private void richTextBox1_LinkClicked(object sender, System.Windows.Forms.LinkClickedEventArgs e) { // Call Process.Start method to open a browser // with link text as URL. p = System.Diagnostics.Process.Start("IExplore.exe", e.LinkText); }
public: System::Diagnostics::Process ^ p; private: void richTextBox1_LinkClicked(System::Object ^ sender, System::Windows::Forms::LinkClickedEventArgs ^ e) { // Call Process.Start method to open a browser // with link text as URL. p = System::Diagnostics::Process::Start("IExplore.exe", e->LinkText); }
(Visual C++) Musíte inicializovat proces
p
, který můžete provést zahrnutím následujícího příkazu do konstruktoru formuláře:p = gcnew System::Diagnostics::Process();
(Visual C#, Visual C++) Do konstruktoru formuláře umístěte následující kód pro registraci obslužné rutiny události.
this.richTextBox1.LinkClicked += new System.Windows.Forms.LinkClickedEventHandler (this.richTextBox1_LinkClicked);
this->richTextBox1->LinkClicked += gcnew System::Windows::Forms::LinkClickedEventHandler (this, &Form1::richTextBox1_LinkClicked);
Po dokončení práce s ním je důležité okamžitě zastavit proces, který jste vytvořili. Odkazem na výše uvedený kód může váš kód, který proces zastaví, vypadat takto:
Public Sub StopWebProcess() p.Kill() End Sub
public void StopWebProcess() { p.Kill(); }
public: void StopWebProcess() { p->Kill(); }
Viz také
.NET Desktop feedback
Váš názor
https://aka.ms/ContentUserFeedback.
Připravujeme: V průběhu roku 2024 budeme postupně vyřazovat problémy z GitHub coby mechanismus zpětné vazby pro obsah a nahrazovat ho novým systémem zpětné vazby. Další informace naleznete v tématu:Odeslat a zobrazit názory pro