Sdílet prostřednictvím


ToolTip – přehled

Popis je malé automaticky otevírané okno, které se zobrazí, když uživatel pozastaví ukazatel myši na prvek, například na Button. Toto téma představuje popis a popisuje, jak vytvořit a přizpůsobit obsah popisu.

Co je popis

Když uživatel přesune ukazatel myši na prvek, který má popisek, zobrazí se okno obsahující obsah popisu (například textový obsah popisující funkci ovládacího prvku) po určitou dobu. Pokud uživatel přesune ukazatel myši od ovládacího prvku, okno zmizí, protože obsah popisu nemůže přijmout fokus.

Obsah popisu může obsahovat jeden nebo více řádků textu, obrázků, obrazců nebo jiného vizuálního obsahu. Popis ovládacího prvku definujete nastavením jedné z následujících vlastností na obsah popisu.

Která vlastnost, kterou použijete, závisí na tom, zda ovládací prvek, který definuje popisek, dědí z FrameworkContentElement třídy nebo FrameworkElement třídy.

Vytvoření popisu

Následující příklad ukazuje, jak vytvořit jednoduchý popis nastavením ToolTip vlastnosti Button ovládacího prvku na textový řetězec.

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

Popis můžete také definovat jako ToolTip objekt. Následující příklad používá XAML k určení ToolTip objektu jako popis TextBox prvku. Všimněte si, že příklad určuje ToolTip nastavením FrameworkElement.ToolTip vlastnosti.

<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>

Následující příklad používá kód k vygenerování objektu ToolTip . Příklad vytvoří ToolTip (tt) a přidruží ho k .Button

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)

Můžete také vytvořit obsah popisu, který není definován jako ToolTip objekt uzavřením obsahu popisu do prvku rozložení, například DockPanel. Následující příklad ukazuje, jak nastavit ToolTip vlastnost TextBox obsahu, který je uzavřen v ovládacím DockPanel prvku.

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

Použití vlastností tříd ToolTip a ToolTipService

Obsah popisu můžete přizpůsobit nastavením vlastností vizuálu a použitím stylů. Pokud definujete obsah popisu jako ToolTip objekt, můžete nastavit vizuální vlastnosti objektu ToolTip . V opačném případě je nutné nastavit ekvivalentní připojené vlastnosti třídy ToolTipService .

Příklad nastavení vlastností pro určení umístění obsahu popisu pomocí ToolTip vlastností a ToolTipService vlastností naleznete v tématu Umístění popisu.

Styling a ToolTip

Styl můžete vytvořit ToolTip definováním vlastního Style. Následující příklad definuje volal StyleSimple, který ukazuje, jak posun umístění ToolTip a změnit jeho vzhled nastavením Background, , ForegroundFontSizea FontWeight.

<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>

Použití vlastností časového intervalu toolTipService

Třída ToolTipService poskytuje následující vlastnosti pro nastavení doby zobrazení popisu: InitialShowDelay, BetweenShowDelaya ShowDuration.

InitialShowDelay Pomocí vlastností ShowDuration můžete určit zpoždění, obvykle stručné před zobrazenímToolTip, a také určit, jak dlouho ToolTip zůstane viditelný. Další informace naleznete v tématu Postupy: Zpoždění zobrazení popisu.

Vlastnost BetweenShowDelay určuje, jestli se popisy pro různé ovládací prvky zobrazí bez počátečního zpoždění, když mezi nimi rychle přesunete ukazatel myši. Další informace o BetweenShowDelay vlastnosti naleznete v části Použití BetweenShowDelay Vlastnost.

Následující příklad ukazuje, jak nastavit tyto vlastnosti pro popis.

<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>

Viz také