Aracılığıyla paylaş


İpucu

Araç ipucu, kullanıcı fare işaretçisini bir öğe üzerinde durakladığında (örneğin, bir Button) beliren küçük bir açılır penceredir. Kullanıcı fare işaretçisini araç ipucu olan bir öğenin üzerine getirince, belirli bir süre için araç ipucu içeriği (örneğin, denetimin işlevini açıklayan metin içeriği) içeren bir pencere görüntülenir. Kullanıcı fare işaretçisini denetimden uzaklaştırırsa, araç ipucu içeriği odağı alamadığından pencere kaybolur.

Aşağıdaki çizimde Kapat'aButton işaret eden ve tanımlayıcısını ToolTipgörüntüleyen bir fare işaretçisi gösterilmektedir.

Kapat düğmesi, araç ipucunu gösteriyor

WPF'de bir onay kutusu denetiminin üzerine gelindiğinde gösterilen araç ipucu.

Araç ipucunun içeriği bir veya daha fazla metin satırı, resim, şekil veya diğer görsel içeriği içerebilir. Aşağıdaki özelliklerden birini araç ipucu içeriğine ayarlayarak denetim için bir araç ipucu tanımlarsınız:

Hangi özelliği kullanacağınız, araç ipucunu tanımlayan denetimin FrameworkContentElement veya FrameworkElement sınıfından devralıp devralmadığına bağlıdır.

Araç İpucu Oluşturma

Aşağıdaki örnek, ToolTip denetimi için Button özelliğini bir metin dizesine ayarlayarak basit bir araç ipucu nasıl oluşturulacağını göstermektedir.

<Button ToolTip="Click to submit your information" 
        Click="SubmitCode" Height="20" Width="50">Submit</Button>

Toolip'i aynı zamanda ToolTip nesne olarak da tanımlayabilirsiniz. XAML, aşağıdaki örnekte bir ToolTip nesnesini, bir TextBox öğesinin araç ipucu olarak belirlemek için kullanılır. Örnek, ToolTip öğesini belirtmek için FrameworkElement.ToolTip özelliğini ayarlar.

<TextBox HorizontalAlignment="Left">ToolTip with non-text content
  <TextBox.ToolTip>
    <ToolTip>
      <DockPanel Width="50" Height="70">
        <Image Source="data\flower.jpg"/>
        <TextBlock>Useful information goes here.</TextBlock>
      </DockPanel>
    </ToolTip>
  </TextBox.ToolTip>
</TextBox>

Aşağıdaki örnekte bir ToolTip nesne oluşturmak için kod kullanılmaktadır. Bir örnek ToolTip (tt) oluşturur ve onu bir Button ile ilişkilendirir.

button = new Button();
button.Content = "Hover over me.";
tt = new ToolTip();
tt.Content = "Created with C#";
button.ToolTip = tt;
cv2.Children.Add(button);
button = New Button()
button.Content = "Hover over me."
tt = New ToolTip()
tt.Content = "Created with Visual Basic"
button.ToolTip = tt
cv2.Children.Add(button)

Tanımlı bir ToolTip nesne olarak olmayan araç ipucu içeriğini, DockPanel gibi bir düzen öğesi içerisine alarak da oluşturabilirsiniz. Aşağıdaki örnekte, bir ToolTip özelliğinin TextBox denetimin içinde DockPanel yer alan içeriğe nasıl ayarlanacağı gösterilmektedir.

<TextBox>
  ToolTip with image and text
  <TextBox.ToolTip>
       <StackPanel>
        <Image Source="data\flower.jpg"/>
        <TextBlock>Useful information goes here.</TextBlock>
      </StackPanel>
  </TextBox.ToolTip>

Araç İpucunu Özelleştirme

Görsel özellikleri ayarlayarak ve stilleri uygulayarak araç ipucu içeriğini özelleştirebilirsiniz. Araç ipucu içeriğini bir ToolTip nesne olarak tanımlarsanız, nesnenin görsel özelliklerini ToolTip ayarlayabilirsiniz. Aksi takdirde, ToolTipService sınıfında ekli eşdeğer özellikleri ayarlamanız gerekir.

Özellikleri kullanarak araç ipucu içeriğinin konumunu belirtmek için özelliklerin nasıl ayarlanacağına dair bir örnek görmek istiyorsanız, bkz. ToolTip.

Zaman aralığı özellikleri

sınıfı, ToolTipService araç ipucu görüntüleme sürelerini ayarlamanız için aşağıdaki özellikleri sağlar: InitialShowDelay, BetweenShowDelayve ShowDuration.

InitialShowDelay ve ShowDuration özelliklerini kullanarak, ToolTip görünmeden önce genellikle kısa bir gecikme ve ToolTip'ün ne kadar süreyle görünür kalacağını belirtin. Daha fazla bilgi için bkz: Nasıl yapılır: Araç İpucunun Görüntülenmesini Geciktirme.

Bu özellik, fare işaretçisini aralarında hızlı bir şekilde hareket ettirdiğinizde farklı denetimler için araç ipuçlarının ön gecikme olmadan görüntülenip görüntülenmediğini belirler. Özelliği hakkında BetweenShowDelay daha fazla bilgi için bkz. BetweenShowDelay Özelliğini Kullanma.

Aşağıdaki örnekte bir araç ipucu için bu özelliklerin nasıl ayarlanacağı gösterilmektedir.

<Ellipse Height="25" Width="50" 
         Fill="Gray" 
         HorizontalAlignment="Left"
         ToolTipService.InitialShowDelay="1000"
         ToolTipService.ShowDuration="7000"
         ToolTipService.BetweenShowDelay="2000">
  <Ellipse.ToolTip>
    <ToolTip Placement="Right" 
             PlacementRectangle="50,0,0,0"
             HorizontalOffset="10" 
             VerticalOffset="20"
             HasDropShadow="false"
             Opened="whenToolTipOpens"
             Closed="whenToolTipCloses"
             >
      <BulletDecorator>
        <BulletDecorator.Bullet>
          <Ellipse Height="10" Width="20" Fill="Blue"/>
        </BulletDecorator.Bullet>
        <TextBlock>Uses the ToolTip Class</TextBlock>
      </BulletDecorator>
    </ToolTip>
  </Ellipse.ToolTip>
</Ellipse>

Stiller ve şablonlar

Varsayılan ControlTemplate'yi, ToolTip kontrolüne benzersiz bir görünüm vermek için değiştirebilirsiniz. Daha fazla bilgi için bkz. Stiller ve şablonlar nedir? ve Denetim için şablon oluşturma.

Araç İpucu Stili Oluştur

ToolTip'yi özel bir Style tanımlayarak biçimlendirebilirsiniz. Aşağıdaki örnek, Style, Simple, ToolTip ve Background öğelerinin ayarlanmasıyla Foreground konumunun nasıl kaydırılacağını ve görünümünün nasıl değiştirileceğini gösteren bir FontSize tanımlar.

<Style TargetType="ToolTip">
  <Setter Property = "HorizontalOffset" Value="10"/>
  <Setter Property = "VerticalOffset" Value="10"/>
  <Setter Property = "Background" Value="LightBlue"/>
  <Setter Property = "Foreground" Value="Purple"/>
  <Setter Property = "FontSize" Value="14"/>
  <Setter Property = "FontWeight" Value="Bold"/>
</Style>

İçerik özelliği

ContentControl.Content özelliği, denetimin ToolTip içerik özelliğidir. Özellik adını açıkça belirtmeden bu özelliği doğrudan XAML'de ayarlayabilirsiniz.

Parçalar

Bu denetim herhangi bir şablon parçası tanımlamaz.

Görsel durumlar

Aşağıdaki tabloda denetimin görsel durumları listelenmiştir ToolTip .

VisualState Adı VisualStateGroup Adı Description
Kapalı OpenStates Araç ipucu kapalıdır ve görünür değildir.
Açık OpenStates İpucu açık ve görünür.
Geçerli DoğrulamaDurumları Denetim geçerli ve doğrulama hatası yok.
GeçersizOdaklı DoğrulamaDurumları Kontrol öğesinde doğrulama hatası var ve klavye odağı bulunuyor.
InvalidUnfocused DoğrulamaDurumları Denetimde doğrulama hatası var ancak klavye odağı yok.

Ayrıca bakınız