LinkLabel.LinkVisited Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает или задает значение, указывающее, должна ли отображаться ссылка, как если бы она была посетила.
public:
property bool LinkVisited { bool get(); void set(bool value); };
public bool LinkVisited { get; set; }
member this.LinkVisited : bool with get, set
Public Property LinkVisited As Boolean
Значение свойства
false.
Примеры
В следующем примере показано задание LinkBehavior свойства с помощью LinkBehavior перечисления. Он также демонстрирует настройку ActiveLinkColorLinkColor свойств и LinkVisited свойств. Чтобы запустить этот пример, вставьте его в пустую форму и вызов InitializeLinkLabel из конструктора или Load метода формы.
// 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 управления не указывает автоматически, что ссылка является посещенной ссылкой. Чтобы отобразить ссылку в качестве посещенной ссылки, можно задать значение этого свойства true в обработчике событий для LinkClicked события LinkLabelсобытия. Просматриваемая ссылка отображается с помощью цвета, указанного в VisitedLinkColor свойстве LinkLabel элемента управления. После закрытия формы, содержащей LinkLabel элемент управления, удаляется состояние "все отображение", связанное с ссылкой. Чтобы сохранить состояние отображения ссылки, необходимо сохранить состояние отображения ссылки в параметре реестра, связанном с приложением.
Замечание
Это свойство влияет только на первую ссылку, определенную в элементе LinkLabel управления. Если в элементе управления указано несколько ссылок, используйте Visited свойство LinkLabel.Link класса. Вы можете получить доступ ко всем ссылкам, определенным в LinkLabel свойстве Links .