LinkLabel.LinkCollection.Add 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
컬렉션에 링크를 추가합니다.
오버로드
Add(LinkLabel+Link) |
지정된 값을 가진 링크를 컬렉션에 추가합니다. |
Add(Int32, Int32) |
컬렉션에 링크를 추가합니다. |
Add(Int32, Int32, Object) |
링크와 링크에 연결할 정보를 컬렉션에 추가합니다. |
Add(LinkLabel+Link)
지정된 값을 가진 링크를 컬렉션에 추가합니다.
public:
int Add(System::Windows::Forms::LinkLabel::Link ^ value);
public int Add (System.Windows.Forms.LinkLabel.Link value);
member this.Add : System.Windows.Forms.LinkLabel.Link -> int
Public Function Add (value As LinkLabel.Link) As Integer
매개 변수
- value
- LinkLabel.Link
추가할 링크를 나타내는 LinkLabel.Link입니다.
반환
value
매개 변수에 지정된 링크의 위치를 나타내는 컬렉션 내의 인덱스(0부터 시작)입니다.
적용 대상
Add(Int32, Int32)
컬렉션에 링크를 추가합니다.
public:
System::Windows::Forms::LinkLabel::Link ^ Add(int start, int length);
public System.Windows.Forms.LinkLabel.Link Add (int start, int length);
member this.Add : int * int -> System.Windows.Forms.LinkLabel.Link
Public Function Add (start As Integer, length As Integer) As LinkLabel.Link
매개 변수
- start
- Int32
링크가 만들어진 레이블의 텍스트에 있는 시작 문자입니다.
- length
- Int32
링크 텍스트에 포함할 시작 문자 다음의 문자 수입니다.
반환
만든 후 컬렉션에 추가한 링크를 나타내는 LinkLabel.Link입니다.
예제
다음 예제에서는 열거형을 LinkBehavior 사용 하 여 속성을 설정 하는 LinkBehavior 방법을 보여 줍니다. 또한 , 및 LinkVisitedLinkColorText 속성을 설정하고 ActiveLinkColor에 항목을 추가하는 방법을 LinkLabel.LinkCollection보여 줍니다. 이 예제를 실행하려면 빈 폼에 붙여넣고 폼의 생성자 또는 Load
메서드에서 를 호출 InitializeLinkLabel
합니다.
// Declare the LinkLabel object.
internal:
System::Windows::Forms::LinkLabel^ LinkLabel1;
// Declare keywords array to identify links
array<String^>^keywords;
private:
void InitializeLinkLabel()
{
this->LinkLabel1 = gcnew System::Windows::Forms::LinkLabel;
this->LinkLabel1->Links->Clear();
// Set the location, name and size.
this->LinkLabel1->Location = System::Drawing::Point( 10, 20 );
this->LinkLabel1->Name = "CompanyLinks";
this->LinkLabel1->Size = System::Drawing::Size( 104, 150 );
// Set the LinkBehavior property to show underline when mouse
// hovers over the links.
this->LinkLabel1->LinkBehavior = System::Windows::Forms::LinkBehavior::HoverUnderline;
String^ textString = "For more information see our"
" company website or the research page at Contoso Ltd. ";
// Set the text property.
this->LinkLabel1->Text = textString;
// Set the color of the links to black, unless the mouse
// is hovering over a link.
this->LinkLabel1->LinkColor = System::Drawing::Color::Black;
this->LinkLabel1->ActiveLinkColor = System::Drawing::Color::Blue;
// Associate the event-handling method with the LinkClicked
// event.
this->LinkLabel1->LinkClicked += gcnew LinkLabelLinkClickedEventHandler( this, &Form1::LinkLabel1_LinkClicked );
// Add links to the LinkCollection using starting index and
// length of keywords.
array<String^>^temp0 = {"company","research"};
keywords = temp0;
System::Collections::IEnumerator^ myEnum = keywords->GetEnumerator();
while ( myEnum->MoveNext() )
{
String^ keyword = safe_cast<String^>(myEnum->Current);
this->LinkLabel1->Links->Add( textString->IndexOf( keyword ), keyword->Length );
}
// Add the label to the form.
this->Controls->Add( this->LinkLabel1 );
}
void LinkLabel1_LinkClicked( Object^ /*sender*/, LinkLabelLinkClickedEventArgs^ e )
{
String^ url = "";
// Determine which link was clicked and set the appropriate url.
switch ( LinkLabel1->Links->IndexOf( e->Link ) )
{
case 0:
url = "www.microsoft.com";
break;
case 1:
url = "www.contoso.com/research";
break;
}
// Set the visited property to True. This will change
// the color of the link.
e->Link->Visited = true;
// Open Internet Explorer to the correct url.
System::Diagnostics::Process::Start( "IExplore.exe", url );
}
// Declare the LinkLabel object.
internal System.Windows.Forms.LinkLabel LinkLabel1;
// Declare keywords array to identify links
string[] keywords;
private void InitializeLinkLabel()
{
this.LinkLabel1 = new System.Windows.Forms.LinkLabel();
this.LinkLabel1.Links.Clear();
// Set the location, name and size.
this.LinkLabel1.Location = new System.Drawing.Point(10, 20);
this.LinkLabel1.Name = "CompanyLinks";
this.LinkLabel1.Size = new System.Drawing.Size(104, 150);
// Set the LinkBehavior property to show underline when mouse
// hovers over the links.
this.LinkLabel1.LinkBehavior = System.Windows.Forms.LinkBehavior.HoverUnderline;
string textString = "For more information see our" +
" company website or the research page at Contoso Ltd. ";
// Set the text property.
this.LinkLabel1.Text = textString;
// Set the color of the links to black, unless the mouse
// is hovering over a link.
this.LinkLabel1.LinkColor = System.Drawing.Color.Black;
this.LinkLabel1.ActiveLinkColor = System.Drawing.Color.Blue;
// Associate the event-handling method with the LinkClicked
// event.
this.LinkLabel1.LinkClicked +=
new LinkLabelLinkClickedEventHandler(LinkLabel1_LinkClicked);
// Add links to the LinkCollection using starting index and
// length of keywords.
keywords = new string[]{"company", "research"};
foreach ( string keyword in keywords )
{
this.LinkLabel1.Links.Add(textString.IndexOf(keyword), keyword.Length);
}
// Add the label to the form.
this.Controls.Add(this.LinkLabel1);
}
private void LinkLabel1_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
{
string url = "";
// Determine which link was clicked and set the appropriate url.
switch(LinkLabel1.Links.IndexOf(e.Link))
{
case 0:
url = "www.microsoft.com";
break;
case 1:
url = "www.contoso.com/research";
break;
}
// Set the visited property to True. This will change
// the color of the link.
e.Link.Visited = true;
// Open Internet Explorer to the correct url.
System.Diagnostics.Process.Start("IExplore.exe", url);
}
' Declare the LinkLabel object.
Friend WithEvents LinkLabel1 As System.Windows.Forms.LinkLabel
' Declare keywords array to identify links
Dim keywords() As String
Private Sub InitializeLinkLabel()
Me.LinkLabel1 = New System.Windows.Forms.LinkLabel
Me.LinkLabel1.Links.Clear()
' Set the location, name and size.
Me.LinkLabel1.Location = New System.Drawing.Point(10, 20)
Me.LinkLabel1.Name = "CompanyLinks"
Me.LinkLabel1.Size = New System.Drawing.Size(104, 150)
' Set the LinkBehavior property to show underline when mouse
' hovers over the links.
Me.LinkLabel1.LinkBehavior = _
System.Windows.Forms.LinkBehavior.HoverUnderline
Dim textString As String = "For more information see our" & _
" company website or the research page at Contoso Ltd. "
' Set the text property.
Me.LinkLabel1.Text = textString
' Set the color of the links to black, unless the mouse
' is hovering over a link.
Me.LinkLabel1.LinkColor = System.Drawing.Color.Black
Me.LinkLabel1.ActiveLinkColor = System.Drawing.Color.Blue
' Add links to the LinkCollection using starting index and
' length of keywords.
keywords = New String() {"company", "research"}
Dim keyword As String
For Each keyword In keywords
Me.LinkLabel1.Links.Add(textString.IndexOf(keyword), keyword.Length)
Next
' Add the label to the form.
Me.Controls.Add(Me.LinkLabel1)
End Sub
Private Sub LinkLabel1_LinkClicked(ByVal sender As Object, _
ByVal e As LinkLabelLinkClickedEventArgs) _
Handles LinkLabel1.LinkClicked
Dim url As String
' Determine which link was clicked and set the appropriate url.
Select Case LinkLabel1.Links.IndexOf(e.Link)
Case 0
url = "www.microsoft.com"
Case 1
url = "www.contoso.com/research"
End Select
' Set the visited property to True. This will change
' the color of the link.
e.Link.Visited = True
' Open Internet Explorer to the correct url.
System.Diagnostics.Process.Start("IExplore.exe", url)
End Sub
설명
컨트롤은 LinkLabel 컨트롤의 텍스트 내에 여러 링크를 표시할 수 있습니다. 메서드 Add 를 사용하면 컨트롤 내의 LinkLabel 텍스트를 사용자가 클릭할 수 있는 링크로 변환하여 컨트롤과 유사한 Button 작업을 수행할 수 있습니다. 이 메서드는 에 대해 만들어진 LinkLabel.LinkCollection 링크를 에 추가합니다 LinkLabel. 예를 들어 레이블 텍스트 "빠른 갈색 여우"에서 단어 "quick"를 설정하려는 경우 매개 변수가 4(4)로 설정되고 length
매개 변수가 5(5)로 설정된 이 메서드 start
를 호출합니다. 그런 다음 "quick"이라는 단어가 링크로 변경되고 링크가 컬렉션에 추가됩니다. 표시할 URL 또는 사용자가 링크를 클릭할 때 열 파일과 같은 정보를 링크에 연결하려면 다른 버전의 메서드를 Add 사용합니다.
참고
두 개의 링크가 동일한 텍스트를 공유할 수 없습니다. 다른 링크에서 이미 사용되는 텍스트를 사용하는 링크를 만들면 예외가 throw됩니다.
적용 대상
Add(Int32, Int32, Object)
링크와 링크에 연결할 정보를 컬렉션에 추가합니다.
public:
System::Windows::Forms::LinkLabel::Link ^ Add(int start, int length, System::Object ^ linkData);
public System.Windows.Forms.LinkLabel.Link Add (int start, int length, object linkData);
public System.Windows.Forms.LinkLabel.Link Add (int start, int length, object? linkData);
member this.Add : int * int * obj -> System.Windows.Forms.LinkLabel.Link
Public Function Add (start As Integer, length As Integer, linkData As Object) As LinkLabel.Link
매개 변수
- start
- Int32
링크가 만들어진 레이블의 텍스트에 있는 시작 문자입니다.
- length
- Int32
링크 텍스트에 포함할 시작 문자 다음의 문자 수입니다.
- linkData
- Object
링크와 연결할 정보가 들어 있는 개체입니다.
반환
만든 후 컬렉션에 추가한 링크를 나타내는 LinkLabel.Link입니다.
예제
다음 코드 예제에서는 링크를 표시 하는 컨트롤을 만들고 LinkLabel 컨트롤의 텍스트에 정의 된 링크를 클릭 하는 경우 기본 브라우저에 Microsoft 웹 사이트를 표시 합니다. 이 예제에서는 컨트롤을 초기화하는 LinkLabel 메서드와 컨트롤의 이벤트를 처리할 메서드를 LinkClicked 정의합니다. 이벤트의 이벤트 처리기는 LinkClicked 클래스의 LinkLabel.Link 속성을 사용하여 LinkData 기본 브라우저에 표시할 URL을 결정합니다. 이 예제에서는 클래스 내에 Form 있어야 합니다.
// Create a new LinkLabel control.
private:
LinkLabel^ linkLabel1;
public:
void InitializeMyLinkLabel()
{
// Set the control to autosize based on the text content.
linkLabel1->AutoSize = true;
// Position and size the control on the form.
linkLabel1->Location = System::Drawing::Point( 8, 16 );
linkLabel1->Size = System::Drawing::Size( 135, 13 );
// Set the text to display in the label.
linkLabel1->Text = "Click here to get more info.";
// Create a new link using the Add method of the LinkCollection class.
linkLabel1->Links->Add( 6, 4, "www.microsoft.com" );
// Create an event handler for the LinkClicked event.
linkLabel1->LinkClicked += gcnew System::Windows::Forms::LinkLabelLinkClickedEventHandler( this, &Form1::linkLabel1_LinkClicked );
// Add the control to the form.
this->Controls->Add( linkLabel1 );
}
private:
void linkLabel1_LinkClicked( Object^ /*sender*/, System::Windows::Forms::LinkLabelLinkClickedEventArgs^ e )
{
// Determine which link was clicked within the LinkLabel.
linkLabel1->Links[ linkLabel1->Links->IndexOf( e->Link ) ]->Visited = true;
// Display the appropriate link based on the value of the LinkData property of the Link object.
System::Diagnostics::Process::Start( e->Link->LinkData->ToString() );
}
// Create a new LinkLabel control.
private LinkLabel linkLabel1 = new LinkLabel();
public void InitializeMyLinkLabel()
{
// Set the control to autosize based on the text content.
linkLabel1.AutoSize = true;
// Position and size the control on the form.
linkLabel1.Location = new System.Drawing.Point(8,16);
linkLabel1.Size = new System.Drawing.Size(135,13);
// Set the text to display in the label.
linkLabel1.Text = "Click here to get more info.";
// Create a new link using the Add method of the LinkCollection class.
linkLabel1.Links.Add(6,4,"www.microsoft.com");
// Create an event handler for the LinkClicked event.
linkLabel1.LinkClicked += new System.Windows.Forms.LinkLabelLinkClickedEventHandler(this.linkLabel1_LinkClicked);
// Add the control to the form.
this.Controls.Add(linkLabel1);
}
private void linkLabel1_LinkClicked(object sender, System.Windows.Forms.LinkLabelLinkClickedEventArgs e)
{
// Determine which link was clicked within the LinkLabel.
linkLabel1.Links[linkLabel1.Links.IndexOf(e.Link)].Visited = true;
// Display the appropriate link based on the value of the LinkData property of the Link object.
System.Diagnostics.Process.Start(e.Link.LinkData.ToString());
}
' Create a new LinkLabel control.
Private linkLabel1 As New LinkLabel()
Public Sub InitializeMyLinkLabel()
' Set the control to autosize based on the text content.
linkLabel1.AutoSize = True
' Position and size the control on the form.
linkLabel1.Location = New System.Drawing.Point(8, 16)
linkLabel1.Size = New System.Drawing.Size(135, 13)
' Set the text to display in the label.
linkLabel1.Text = "Click here to get more info."
' Create a new link using the Add method of the LinkCollection class.
linkLabel1.Links.Add(6, 4, "www.microsoft.com")
' Create an event handler for the LinkClicked event.
AddHandler linkLabel1.LinkClicked, AddressOf Me.linkLabel1_LinkClicked
' Add the control to the form.
Me.Controls.Add(linkLabel1)
End Sub
Private Sub linkLabel1_LinkClicked(sender As Object, e As System.Windows.Forms.LinkLabelLinkClickedEventArgs)
' Determine which link was clicked within the LinkLabel.
linkLabel1.Links(linkLabel1.Links.IndexOf(e.Link)).Visited = True
' Display the appropriate link based on the value of the LinkData property of the Link object.
System.Diagnostics.Process.Start(e.Link.LinkData.ToString())
End Sub
설명
컨트롤은 LinkLabel 컨트롤의 텍스트 내에 여러 링크를 표시할 수 있습니다. 메서드 Add 를 사용하면 컨트롤 내의 LinkLabel 텍스트를 사용자가 클릭할 수 있는 링크로 변환하여 컨트롤과 유사한 Button 작업을 수행할 수 있습니다. 이 메서드는 에 대해 만들어진 LinkLabel.LinkCollection 링크를 에 추가합니다 LinkLabel. 예를 들어 레이블 텍스트 "빠른 갈색 여우"에서 단어 "quick"를 설정하려는 경우 매개 변수가 4(4)로 설정되고 length
매개 변수가 5(5)로 설정된 이 메서드 start
를 호출합니다. 그런 다음 "quick"이라는 단어가 링크로 변경되고 링크가 컬렉션에 추가됩니다. 이 버전의 Add 메서드를 사용하면 매개 변수를 통해 linkData
링크와 연결할 수 있는 추가 정보를 제공할 수 있습니다. 예를 들어 링크를 클릭할 때 표시할 linkData
URL이 포함된 매개 변수에 을 전달할 String 수 있습니다. 그런 다음, 컨트롤의 LinkLabel 이벤트에 대해 LinkClicked 처리기에서 이 정보를 사용하여 브라우저에 URL을 표시할 수 있습니다.
참고
두 개의 링크가 동일한 텍스트를 공유할 수 없습니다. 다른 링크에서 이미 사용 중인 텍스트를 사용하는 링크를 만들면 예외가 throw됩니다.
적용 대상
.NET