방법: Windows Forms LinkLabel 컨트롤을 사용하여 개체 또는 웹 페이지에 연결
Windows Forms LinkLabel 컨트롤을 사용하면 양식에 웹 스타일 링크를 만들 수 있습니다. 링크를 클릭할 때 링크를 방문했음을 나타내도록 색을 변경할 수 있습니다. 색 변경에 대한 자세한 내용은 방법: Windows Forms LinkLabel 컨트롤의 모양 변경을 참조하세요.
다른 양식에 연결
LinkLabel 컨트롤을 사용하여 다른 양식에 연결하려면
Text 속성을 적절한 캡션으로 설정합니다.
캡션의 LinkArea 어떤 부분이 링크로 표시될지 결정하도록 속성을 설정합니다. 표시되는 방법은 링크 레이블의 모양 관련 속성에 따라 달라집니다. LinkArea 값은 시작 문자 위치와 문자 수의 두 개의 숫자를 포함하는 LinkArea 개체에 의해 표시됩니다. LinkArea 속성은 다음과 유사한 방식으로 속성 창 또는 코드에서 설정할 수 있습니다.
' In this code example, the link area has been set to begin ' at the first character and extend for eight characters. ' You may need to modify this based on the text entered in Step 1. LinkLabel1.LinkArea = New LinkArea(0, 8)
// In this code example, the link area has been set to begin // at the first character and extend for eight characters. // You may need to modify this based on the text entered in Step 1. linkLabel1.LinkArea = new LinkArea(0,8);
// In this code example, the link area has been set to begin // at the first character and extend for eight characters. // You may need to modify this based on the text entered in Step 1. linkLabel1->LinkArea = LinkArea(0,8);
LinkClicked 이벤트 처리기에서 Show 메서드를 호출하여 프로젝트에서 다른 양식을 열고 LinkVisited 속성을
true
로 설정합니다.참고
LinkLabelLinkClickedEventArgs 클래스의 인스턴스는 클릭한 LinkLabel 컨트롤에 대한 참조를 전달하므로
sender
개체를 캐스팅할 필요가 없습니다.Protected Sub LinkLabel1_LinkClicked(ByVal Sender As System.Object, _ ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) _ Handles LinkLabel1.LinkClicked ' Show another form. Dim f2 As New Form() f2.Show LinkLabel1.LinkVisited = True End Sub
protected void linkLabel1_LinkClicked(object sender, System. Windows.Forms.LinkLabelLinkClickedEventArgs e) { // Show another form. Form f2 = new Form(); f2.Show(); linkLabel1.LinkVisited = true; }
private: void linkLabel1_LinkClicked(System::Object ^ sender, System::Windows::Forms::LinkLabelLinkClickedEventArgs ^ e) { // Show another form. Form ^ f2 = new Form(); f2->Show(); linkLabel1->LinkVisited = true; }
웹 페이지에 연결
LinkLabel 컨트롤을 사용하여 기본 브라우저에 웹 페이지를 표시할 수도 있습니다.
Internet Explorer를 시작하고 LinkLabel 컨트롤을 사용하여 웹 페이지에 연결하려면
Text 속성을 적절한 캡션으로 설정합니다.
캡션의 LinkArea 어떤 부분이 링크로 표시될지 결정하도록 속성을 설정합니다.
LinkClicked 이벤트 처리기의 예외 처리 블록의 중간에서 LinkVisited 속성을
true
로 설정하고 Start 메서드를 사용하여 URL로 기본 브라우저를 시작하는 두 번째 프로시저를 호출합니다. Start 메서드를 사용하려면 System.Diagnostics 네임스페이스에 대한 참조를 추가해야 합니다.중요
아래 코드가 부분 신뢰 환경(예: 공유 드라이브)에서 실행되는 경우
VisitLink
메서드가 호출될 때 JIT 컴파일러가 실패합니다.System.Diagnostics.Process.Start
문으로 인해 링크 요청이 실패합니다.VisitLink
메서드가 호출될 때 예외를 catch함으로써 아래 코드는 JIT 컴파일러가 실패할 경우 오류가 정상적으로 처리되도록 합니다.Private Sub LinkLabel1_LinkClicked(ByVal sender As System.Object, _ ByVal e As System.Windows.Forms.LinkLabelLinkClickedEventArgs) _ Handles LinkLabel1.LinkClicked Try VisitLink() Catch ex As Exception ' The error message MessageBox.Show("Unable to open link that was clicked.") End Try End Sub Sub VisitLink() ' Change the color of the link text by setting LinkVisited ' to True. LinkLabel1.LinkVisited = True ' Call the Process.Start method to open the default browser ' with a URL: System.Diagnostics.Process.Start("http://www.microsoft.com") End Sub
private void linkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e) { try { VisitLink(); } catch (Exception ex ) { MessageBox.Show("Unable to open link that was clicked."); } } private void VisitLink() { // Change the color of the link text by setting LinkVisited // to true. linkLabel1.LinkVisited = true; //Call the Process.Start method to open the default browser //with a URL: System.Diagnostics.Process.Start("http://www.microsoft.com"); }
private: void linkLabel1_LinkClicked(System::Object ^ sender, System::Windows::Forms::LinkLabelLinkClickedEventArgs ^ e) { try { VisitLink(); } catch (Exception ^ ex) { MessageBox::Show("Unable to open link that was clicked."); } } private: void VisitLink() { // Change the color of the link text by setting LinkVisited // to true. linkLabel1->LinkVisited = true; // Call the Process.Start method to open the default browser // with a URL: System::Diagnostics::Process::Start("http://www.microsoft.com"); }
참고 항목
.NET Desktop feedback