LinkLabel.LinkCollection.IndexOf(LinkLabel+Link) メソッド
定義
重要
一部の情報は、リリース前に大きく変更される可能性があるプレリリースされた製品に関するものです。 Microsoft は、ここに記載されている情報について、明示または黙示を問わず、一切保証しません。
コレクション内の指定したリンクのインデックスを返します。
public:
int IndexOf(System::Windows::Forms::LinkLabel::Link ^ link);
public int IndexOf (System.Windows.Forms.LinkLabel.Link link);
member this.IndexOf : System.Windows.Forms.LinkLabel.Link -> int
Public Function IndexOf (link As LinkLabel.Link) As Integer
パラメーター
- link
- LinkLabel.Link
コレクション内で検索するリンクを表す LinkLabel.Link。
戻り値
リンクがコレクション内に存在する場合はその項目の 0 から始まるインデックス番号。それ以外の場合は -1。
例
次のコード例では、 列挙を使用して プロパティを LinkBehavior 設定する方法を LinkBehavior 示します。 また、 、、Textおよび プロパティをLinkColorActiveLinkColor設定しLinkVisited、 内の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
注釈
IndexOfメソッドを使用すると、リンクがコレクション内のどこにあるかを判断できます。 このメソッドを呼び出す前に、コレクション内にリンクがあるかどうかを確認するには、 メソッドを Contains 使用します。
適用対象
GitHub で Microsoft と共同作業する
このコンテンツのソースは GitHub にあります。そこで、issue や pull request を作成および確認することもできます。 詳細については、共同作成者ガイドを参照してください。
.NET